在我的 EC2 实例上增大 EBS 卷之后如何扩展我的 Linux 文件系统?

上次更新时间:2020 年 5 月 5 日

我增加了 Amazon Elastic Block Store (Amazon EBS) 卷的大小,但我的文件系统未在使用完整的卷。如何解决此问题?

解决方法

当卷已扩大为更大的大小时,还必须调整文件系统的大小才能利用更大的卷大小。文件系统处于正在优化状态后,您就可以调整其大小。

下面的程序可扩展 8 GB ext4 文件系统以充分利用 16 GB 卷。文件系统位于运行 Ubuntu 的 Amazon Elastic Compute Cloud (Amazon EC2) 实例上。

1.    在对您的卷或文件系统进行更改之前,先创建卷的快照。有关更多信息,请参阅创建 Amazon EBS 快照

2.    使用 df -h 命令以显示文件系统所使用的大小和百分比。 

ubuntu@ip-172-31-32-114:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda1      7.7G  7.7G     0 100% /
/dev/xvdf       7.9G  7.1G  370M  96% /home/ubuntu/test

在本示例中,/dev/xvdf/ 文件系统大小为 7.9G,利用率为 96%

3.    使用 lsblk 命令显示 xvdf 卷的大小。 

ubuntu@ip-172-31-32-114:~$ lsblk
NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
xvda    202:0    0    8G  0 disk
└─xvda1 202:1    0    8G  0 part /
xvdf    202:80   0   16G  0 disk /home/ubuntu/test

在本示例中,xvdf 卷的大小为 16G

4.    使用 SSH 连接到您的实例。有关详细信息,请参阅连接到您的 Linux 实例

5.    如果卷中有一个分区包含文件系统,则在扩展文件系统之前必须调整该分区的大小

6.    使用 resize2fs 命令可自动将 /dev/xvdf/ 文件系统的大小扩展到卷上的完整空间。

ubuntu@ip-172-31-32-114:~$ sudo resize2fs /dev/xvdf

注意:在本示例中,卷使用 ext4 文件系统。根据文件系统,您可能需要使用不同的实用程序。有关详细信息,请参阅扩展文件系统

7.    重新运行 df –h 命令。

ubuntu@ip-172-31-32-114:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda1      7.7G  7.7G     0 100% /
/dev/xvdf        16G  7.1G  8.0G  48% /home/ubuntu/test

现在,/dev/xvdf/ 文件系统大小为 16 G,利用率仅为 48%