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

2 分钟阅读
0

我增加了 Amazon Elastic Block Store(Amazon EBS)卷的大小,但我的文件系统没有使用完整的卷。

解决方法

当您将卷扩展得更大时,必须调整文件系统的大小,才能利用较大的卷。只要文件系统处于正在优化状态,您就可以调整其大小。

**注意:**下面的步骤仅适用于使用整个磁盘设备的文件系统。您不能使用这些步骤来增加分区、根文件系统、RAID 设备逻辑卷管理器(LVM)上的文件系统。

下面的示例将一个 8 GB ext4 文件系统扩展为完全使用 16 GB 卷。文件系统位于 Amazon Elastic Compute Cloud(Amazon EC2)实例上。

1.    在更改卷或文件系统之前,请创建卷的快照。有关详细信息,请参阅创建 Amazon EBS 快照

2.    使用 SSH 连接到您的实例。有关更多信息,请参阅连接到您的 Linux 实例

3.    运行 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% 已经被占用。在 Nitro 实例上,磁盘设备命名为 /dev/nvmeXn1,分区命名为 /dev/nvmeXn1pY。在文件系统名称中,X 表示磁盘,Y 表示分区。

4.    运行 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

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

6.    运行 resize2fs 命令,自动将 /dev/xvdf 文件系统的大小扩展到卷上的全部空间。必须使用从 df -h 命令中获得的设备名称。

输出示例:

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

在前面的输出示例中,卷使用 ext4 文件系统。根据您的文件系统,您可能需要使用不同的实用程序。如果收到“resize2fs: 尝试打开 /dev/xvdf 时设备或资源繁忙”错误,则您正在对磁盘分区应用调整大小。

**注意:**只能对 ext3 和 ext4 文件系统运行 resize2fs 命令。

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 文件系统现在的大小为 16G,其中 48% 已经被占用。

相关信息

查看有关 Amazon EBS 卷的信息

使 Amazon EBS 卷可在 Linux 上使用

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

AWS 官方
AWS 官方已更新 6 个月前