操作前的注意事项:
-
操作前备份数据:虽然扩容通常安全,但建议对重要数据做快照。
-
实例类型限制:某些旧实例类型可能不支持 EBS 卷动态扩展。
-
根卷 vs 数据卷:非根卷(如 /dev/xvdb)需先卸载(风险较高,建议停机操作)。
一、控制台上进行实例操作
1.先找到要进行磁盘扩容的服务器实例

2.选择存储选项
点击后可以看见存储设备的相关信息,查看卷信息,并进行修改操作。接下来就可以修改卷的大小
大小根据你的实际需要来

操作完成之后登录服务器操作
二、扩展文件系统
1.如果需要调整分区大小,执行以下操作:
a.检查卷是否有分区,命令:lsblk
官方示例如下:

个人实际操作如下:

如果该卷有分区,请继续执行下一步 (b)。
如果该卷没有分区,请跳过步骤 b、c 和 d,然后继续执行步骤 2。
b.检查是否需要扩展分区。在上一步的 lsblk 命令输出中,比较分区大小和卷大小。
如果分区大小小于卷大小,请继续执行下一步 (c)。
如果分区大小等于卷大小,则无需扩展分区-跳过步骤 c 和 d,继续步骤 2。
如果像我上图中所示就是分区大小等于卷大小。下图所示就是分区大小小于卷大小:

c.扩展分区。使用 growpart 命令并指定设备名称和分区编号。指令如下:
sudo growpart /dev/nvme0n1 1

官方示例如上,个人实际操作如下:
sudo growpart /dev/xvda 1

问题排查技巧
-
mkdir: cannot create directory '/tmp/growpart.31171': No space left on device FAILED: failed to make temp dir
:表示卷上没有足够的可用磁盘空间供 growpart 创建执行调整大小所需的临时目录。请释放一些磁盘空间并重试。 -
must supply partition-number
:表示您指定的分区不正确。使用 lsblk 命令以确认分区名称,并确保在设备名称和分区编号之间输入空格。 -
NOCHANGE: partition 1 is size 16773087. it cannot be grown
:表示分区已经扩展了整个卷,无法再扩展。
d.验证是否已扩展分区。使用 lsblk 命令。分区大小现在应等于卷大小。指令:lsblk

此时已经分区大小与卷大小相等。
2.扩展文件系统。
a.获取需要扩展的文件系统的名称、大小、类型和挂载点。使用 df -hT 指令。官方示例如下:

-
如果文件系统大小小于卷大小,请继续执行下一步 。
-
如果文件系统大小等于卷大小,则无需对其进行扩展。在这种情况下,请跳过剩下的步骤-分区和文件系统已扩展到新的卷大小。
b.扩展文件系统的命令因文件系统类型而异。根据您在上一步中记录的文件系统类型选择以下正确命令。
xfs文件系统命令:sudo xfs_growfs /

如果是 ext4
sudo resize2fs /dev/xvda1
三、验证
df -h / # 查看根分区是否显示新容量
lsblk # 确认 /dev/xvda1 大小与 EBS 卷一致
结果如图所示:

