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.9 G で使用率は 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 ボリュームのサイズは 16 G です。

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% です。