AWS EC2磁盘扩容

AWS EC2默认创建的时候磁盘比较小,当磁盘不够的时候,我们需要对EC2的硬盘进行扩容。

AWS EC2 控制面板修改磁盘大小

  • AWS Console进行Elastic Block Store的卷中
  • 选择需要扩容的磁盘,点击操作按钮
  • 点击修改
  • 卷类型选择通用型SSD(gp2)(可以根据自己的需求选择其他类型)
  • 大小输入16(按需输入)
  • 点击确认修改

修改卷

调整卷大小后扩展 Linux 文件系统

  • 使用df -h命令验证挂载在”/“下的根分区是否已满(100%)
    磁盘
  • 运行以下命令lsblk以收集有关附加块设备和根”/“挂载点的详细信息。
    挂载
  • 为避免块设备上没有剩余空间错误,请将临时文件系统tmpfs挂载到/tmp挂载点。这会创建一个挂载到/tmp的 10 M tmpfs
    1
    sudo mount -o size=10M,rw,nodev,nosuid -t tmpfs tmpfs /tmp
    挂载tmpfs
  • 运行growpart命令以增大根分区或分区1 的大小。将/dev/nvme0n1替换为你的根分区
    1
    sudo growpart /dev/nvme0n1 1
  • 运行lsblk命令以验证分区 1 是否已扩展到 16 GiB
    扩展磁盘
  • 扩展文件系统。执行lsblk -f确认磁盘类型
    磁盘类型
  • 如果想要扩展XFS类型的文件系统,执行下面的命令
    1
    sudo xfs_growfs -d /
    扩展XFS
  • 如果想要扩展EXT2/EXT3/EXT4文件系统,执行
    1
    sudo resize2fs /dev/nvme0n1p1
  • 扩展文件系统后,使用df -h命令验证操作系统是否可以看到额外的空间
    结果
  • 使用unmount命令卸载tmpfs文件系统
    1
    $ sudo umount /tmp

FAQ

  • FAILED: failed to dump sfdisk info for /dev/nvme0n1
    为避免块设备上没有剩余空间错误,请将临时文件系统tmpfs挂载到/tmp挂载点。这会创建一个挂载到/tmp的 10 M tmpfs
    1
    sudo mount -o size=10M,rw,nodev,nosuid -t tmpfs tmpfs /tmp
  • FAILED: failed: sfdisk –list /dev/nvme0n1
    为避免块设备上没有剩余空间错误,请将临时文件系统tmpfs挂载到/tmp挂载点。这会创建一个挂载到/tmp的 10 M tmpfs
    1
    sudo mount -o size=10M,rw,nodev,nosuid -t tmpfs tmpfs /tmp

    引用

  • How do I increase the size of my EBS volume if I receive an error that there’s no space left on my file system?