我有使用 Linux (Ubunty) 的 EC2 实例和 10 GB 的根卷。我已经消耗了大约 96% 的大小,现在我的应用程序响应速度很慢,所以我想将大小增加到 50 GB。
最重要的一点是,我已经有数据了,并且许多应用程序正在这个 EC2 实例上运行,我不想打扰或停止它们。
查看当前可用空间
~$ df -hT
请使用
~$ lsblk
命令查看分区大小
解决方案如下:
拍摄包含有价值数据的卷快照。
使用弹性卷增加 EBS 卷
增加大小后,手动扩展卷的文件系统。
1) Open the Amazon EC2 console at https://console.aws.amazon.com/ec2/.
2) Choose Snapshots under Elastic Block Store in the navigation pane.
3) Choose Create Snapshot.
4) For Select resource type, choose Volume.
5) For Volume, select the volume.
6) (Optional) Enter a description for the snapshot.
7) (Optional) Choose Add Tag to add tags to your snapshot. For each tag, provide a tag key and a tag value.
8) Choose Create Snapshot.
打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/。
选择卷,选择要修改的卷,然后选择操作、修改卷。
修改卷窗口显示卷 ID 和卷的当前配置,包括类型、大小、IOPS 和吞吐量。设置新的配置值如下:
要修改类型,请为卷类型选择一个值。
要修改尺寸,请为尺寸输入新值。
要修改 IOPS,如果卷类型为 gp3、io1 或 io2,请输入新的 IOPS 值。
要修改吞吐量,如果卷类型为 gp3,请为吞吐量输入新值。
完成更改音量设置后,选择“修改”。当提示确认时,选择是。
修改卷大小没有实际效果,除非您还扩展卷的文件系统以利用新的存储容量。
根卷
/dev/nvme0n1
有一个分区 /dev/nvme0n1p1
。虽然根卷的大小反映了新的大小,50 GB,但分区的大小反映了原始大小,10 GB,并且必须先进行扩展,然后才能扩展文件系统。
卷
/dev/nvme1n1
没有分区。卷的大小反映了新的大小,40 GB。
对于那些需要调整大小(并且没有无重新启动限制)的人,某些映像会在启动期间自动调用 resizefs,因此调整根分区大小可能只需要增加磁盘大小并重新启动即可。
如果您使用的是 XFS 文件系统,则扩展文件系统的正确命令是
sudo xfs_growfs -d /
这将增大 XFS 文件系统以使用分区上的最大可用空间。