AWS ec2 根卷增加:在 aws ubuntu 实例上扩展弹性根卷不起作用

AWS ec2 root volume increase: Expanding elastic root volume on aws ubuntu instance not working

我关注了aws doc for expanding elastic root volume 并将我的根卷大小从 8 GB 增加到 20 GB,我使用 lsblk.

确认了这一点

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 20G 0 disk └─xvda1 202:1 0 8G 0 part /

但是更新的大小没有反映在 df -h 命令中,即使我使用 sudo resize2fs /dev/xvda1 命令显式调整设备大小,因为我的文件系统类型是 ext4,我使用 sudo file -s /dev/xvd* 命令。 sudo resize2fs /dev/xvda1 命令给出以下输出:-

sudo resize2fs /dev/xvda1 resize2fs 1.42.12 (29-Aug-2014) The filesystem is already 2096635 (4k) blocks long. Nothing to do!

让我知道,我需要做什么才能 OS 在我的卷中选取尺寸。

谢谢

/dev/xvda1 是 20 GiB 设备上的一个 8 GiB 分区,该卷上没有其他分区。在这种情况下,分区必须 resized 才能使用卷上剩余的 space。

调整分区大小后,您可以扩展文件系统(通过 sudo resize2fs /dev/xvda1)以占用分区上的所有 space。

在 9 个步骤中玩得开心......

为了安全起见,分离根卷并拍摄根卷的快照并调整大小 it.Once,将此卷安装到 your_instance under /dev/sda1 通过 运行ning “lsblk” 和 “df -h” 命令确保文件系统完全扩展到根卷。 如果未反映更改 运行,“resize2fs -f ”

详情请参考,

Steps to increase the root volume

我的解决方案:

我不了解你们,但我能够将 30GB 添加到我原来的 8GB Ubuntu EC2 实例,然后我转到 EC2 控制台管理器并右键单击我的 实例,然后按 重启

重新启动并通过 SSH 返回服务器后,我输入 df -h 并看到我的根分区 (/dev/xvda1) 的大小为 38GB。

你输出的原因是你少了一步。

The resize2fs program does not manipulate the size of partitions. If you wish to enlarge a filesystem, you must make sure you can expand the size of the underlying partition first... https://linux.die.net/man/8/resize2fs

一旦您通过使用 AWS 控制台 (UI) 或使用命令行 aws ec2 modify-volume --volume-id ID_OF_DEVICE --size NEW_SIZE (modify volume command line documentation)

增加了卷的大小

您仍然需要告诉操作系统您想要分配更多space给分区(在本例中是根分区/) 所以让它工作的正确顺序如下所示:

扩展一个分区中的分区table填充可用space

(1) sudo growpart /dev/xvda 1 https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/expand-linux-partition.html

扩展 ext2、ext3、ext4 文件系统

(2)sudo resize2fs /dev/xvda1

更多关于AWS recognizing expanded volume