免责声明:本文档可能包含第三方产品信息,该信息仅供参考。阿里云对第三方产品的性能、可靠性以及操作可能带来的潜在影响,不做任何暗示或其他形式的承诺。
概述
本文主要介绍在多分区场景下,云服务器ECS磁盘分区扩容的方法。
详细信息
阿里云提醒您:
- 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
- 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
- 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。
请根据操作系统类型,选择对应的磁盘分区扩容方法。
扩容Linux实例的磁盘
前提条件
检查分区和文件系统
- 使用root用户登录该实例。
- 执行如下命令,查看当前磁盘的分区表格式。
fdisk -lu [$Device]
注:
系统返回类似如下,若 Disklabel type 参数值为 dos,则分区表格式为MBR,若 Disklabel type 参数值为 gpt,则分区表格式为GPT。
- [$Device]为磁盘设备名称,如
/dev/vda
、/dev/vdb
等。 - 也可使用gdisk命令查看分区表格式。
- [$Device]为磁盘设备名称,如
- 执行如下命令,查看文件系统的类型。
blkid [$Partition]
注:[$Partition]对应当前磁盘的最后一个分区。
系统返回类似如下,确认该分区的文件系统格式。 - 根据分区的文件系统格式,检查文件系统状态,并确认文件系统状态正常。
- 若文件系统格式为EXT(包含ext2、ext3与ext4),请执行如下命令。
e2fsck -n [$Partition]
- 若文件系统格式为XFS,请执行如下命令。
xfs_repair -n [$Partition]
- 若文件系统格式为EXT(包含ext2、ext3与ext4),请执行如下命令。
扩容分区
由于新扩容的空间附加在虚拟磁盘末端,所以对于多分区场景,只支持对排在最后的分区进行扩容。以下扩容方法适用于系统盘与数据盘。请根据磁盘的最后一个分区的文件系统类型,选择对应的扩容方法。
注:为了防止数据丢失,不建议扩容已挂载的分区。
扩容MBR分区
- 执行如下命令,查看待扩容分区的磁盘信息。
fdisk -lu [$Device]
系统返回类似如下,确认该磁盘存在剩余空间用于扩容。 - 执行如下命令,卸载该磁盘的最后一个分区。
注:卸载前检查是否有进程读写该分区,建议终止该进程后再进行卸载磁盘操作。
umount [$Partition]
- 执行如下命令,进入Fdisk分区工具的交互环境。
fdisk -u [$Device]
- 在Fdisk分区工具的交互环境,执行如下子命令,查看分区信息。
p
系统返回类似如下,记录最后一个分区的Number与起始位置。本文以最后一个分区vdb2为例,该分区的Number为2,起始位置为104859648。 - 执行如下子命令,在Partition number栏填写上一步获得的分区Number,现场请根据实际情况填写。
d
系统返回类似如下。 - 执行
n
子命令,将所有剩余空间扩容至最后一个分区。- 在Partition type栏填p。
注:本文以主分区为例,逻辑分区在Partition type栏填e。
- Partition number栏填步骤4中获得的分区Number。
- First sector栏填步骤4中获得的起始位置。
- Last sector栏直接回车使用默认值即可。
- 若提示如下信息,请在该栏填No。
Partition #X contains a XXXX signature.
Do you want to remove the signature? [Y]es/[N]o: - 系统返回类似如下,确认扩容成功。
- 在Partition type栏填p。
- 执行
w
子命令,保存并退出Fdisk分区工具的交互环境。 - 执行如下命令,确保分区表已经更新。
lsblk [$Device]
- 执行如下命令,全面检查文件系统。
fsck -f [$Partition]
- 执行如下命令,手动通知内核重读分区表。
partprobe [$Partition]
- 根据分区的文件系统格式,扩展分区对应的文件系统。
- 若文件系统格式为EXT(包含ext2、ext3与ext4),请执行如下命令。
resize2fs [$Partition]
- 若文件系统格式为XFS,请先挂载(mount)该分区,再执行如下命令。
注:扩展XFS文件系统的前提是需要先挂载分区,否则会提示
[$Partition] is not a mounted XFS filesystem
错误。xfs_growfs [$Partition]
- 若文件系统格式为EXT(包含ext2、ext3与ext4),请执行如下命令。
扩容GPT分区
- 执行如下命令,查看待扩容分区的磁盘信息。
fdisk -l [$Device]
系统返回类似如下,确认该磁盘存在剩余空间用于扩容。 - 执行如下命令,卸载该磁盘的最后一个分区。
注:卸载前检查是否有进程读写该分区,建议终止该进程后再进行卸载磁盘操作。
umount [$Partition]
- 执行如下命令,进入Parted分区工具的交互环境。
注:若当前系统提示命令不存在,则请安装Parted软件包。
parted [$Device]
- 在Parted分区工具的交互环境,执行如下子命令,查看分区信息。
print
系统返回类似如下,获得最后一个分区的Number。 - 依次执行如下子命令,将所有剩余空间扩容至最后一个分区,并检查扩容结果。
resizepart [$Number] 100%
print注:[$Number]即上一步获得的最后一个分区的Number。
系统返回类似如下,确认扩容成功。 - 执行
quit
子命令,退出Parted分区工具的交互环境。 - 执行如下命令,全面检查文件系统。
fsck -f [$Partition]
- 根据分区的文件系统格式,扩展分区对应的文件系统。
- 若文件系统格式为EXT(包含ext2、ext3与ext4),请执行如下命令。
resize2fs [$Partition]
- 若文件系统格式为XFS,请先挂载(mount)该分区,再执行如下命令。
注:扩展XFS文件系统的前提是需要先挂载分区,否则会提示
[$Partition] is not a mounted XFS filesystem
错误。xfs_growfs [$Partition]
- 若文件系统格式为EXT(包含ext2、ext3与ext4),请执行如下命令。
扩容Windows实例的磁盘
前提条件
扩容分区
以下扩容方法适用于系统盘与数据盘。
- 远程连接Windows实例。
- 按 Win + R 键,打开 运行 窗口。输入 diskmgmt.msc 并回车,打开磁盘管理器。
- 在磁盘管理器,选择 操作 > 重新扫描磁盘 。
- 在磁盘管理区域,确认存在未分配容量。
- 右键单击分区的空白处,并选择 扩展卷。目前扩展卷功能支持如下两种场景。
- 扩展系统盘最后一个分区。
- 扩展数据盘任意分区。
- 扩展系统盘最后一个分区。
- 根据扩展卷向导的指示完成扩展卷操作即可。
适用于
- 云服务器 ECS
文档内容是否对您有帮助?