Amazon EBS ボリュームのサイズ変更後にファイルシステムを拡張
EBS ボリュームのサイズを増やしたら、パーティションおよびファイルシステムを新しいより大きなサイズに拡張する必要があります。ボリュームが optimizing
状態に入るとすぐにこれを実行できます。
開始する前に
-
変更をロールバックする必要がある場合に備えて、ボリュームのスナップショットを作成します。詳細については、「Amazon EBS スナップショットの作成」を参照してください。
-
ボリュームの変更が成功し、
optimizing
またはcompleted
状態になっていることを確認します。詳細については、「Amazon EBS ボリューム変更の進行状況のモニタリング」を参照してください。 -
ボリュームがインスタンスにアタッチされており、フォーマットおよびマウントされていることを確認します。詳細については、「アタッチ済みボリュームのフォーマットとマウント」を参照してください。
-
(Linux インスタンスのみ) Amazon EBS ボリュームで論理ボリュームを使用している場合、Logical Volume Manager (LVM) を使用して論理ボリュームを拡張する必要があります。これを行う方法については、「EBS ボリューム全体で LVM 論理ボリュームを作成する方法を教えてください
」の「論理ボリュームを拡張する」のセクションを参照してください。AWSナレッジセンターの記事。
注記
次の手順では、Linux の XFS および Ext4 ファイルシステムを拡張するプロセスについて説明します。別のファイルシステムの拡張に関する詳細ついては、そのドキュメントを参照してください。
ボリュームにパーティションがある場合、Linux でファイルシステムを拡張する前にパーティションを拡張する必要があります。
EBS ボリュームのファイルシステムを拡張する
サイズを変更したボリュームのファイルシステムを拡張するには、以下の手順を使用します。
Xen インスタンスおよび Nitro System 上に構築されたインスタンスでは、デバイスおよびパーティションの命名が異なることに注意してください。インスタンスが Xen ベースか Nitro ベースかを判断するには、以下のように describe-instance-types AWS CLI コマンドを使用します。
[ec2-user ~]$
aws ec2 describe-instance-types --instance-typeinstance_type
--query "InstanceTypes[].Hypervisor"
nitro
は、インスタンスが Nitro ベースであることを示します。xen
は、インスタンスが Xen ベースであることを示しています。
EBS ボリュームのファイルシステムを拡張するには
-
必要に応じて、パーティションのサイズを変更します。そのためには、次の操作を行います。
-
ボリュームにパーティションがあるかどうかを確認します。lsblkコマンドを実行します。
ボリュームにパーティションがある場合は、次のステップ (2b) から手順を継続します。ボリュームにパーティションがない場合は、手順 2b、2c、2d をスキップして、手順 3 から続行します。
トラブルシューティングのヒント
コマンド出力でボリュームが表示されない場合は、ボリュームがインスタンスにアタッチされ、フォーマットおよびマウントされていることを確認します。
-
パーティションを拡張する必要があるかどうかを確認します。前のステップの lsblk コマンド出力で、パーティションサイズとボリュームサイズを比較します。
パーティションサイズがボリュームサイズよりも小さい場合は、次のステップに進みます。パーティションサイズがボリュームサイズと同じ場合、パーティションを拡張することはできません。
トラブルシューティングのヒント
ボリュームがまだ元のサイズを反映している場合は、ボリュームの変更が成功したことを確認します。
-
パーティションを拡張します。growpart コマンドを使用して、デバイス名とパーティション番号を指定します。
トラブルシューティングのヒント
-
mkdir: cannot create directory ‘/tmp/growpart.31171’: No space left on device FAILED: failed to make temp dir
: サイズ変更の実行に必要な一時ディレクトリを growpart が作成するのに十分な空きディスク容量がボリュームにないことを示します。ディスク容量を少し解放してから、もう一度お試しください。 -
must supply partition-number
: 正しくないパーティションが指定されたことを示します。lsblk コマンドを使用してパーティション名を確認し、デバイス名とパーティション番号の間にスペースが入力されていることを確認します。 -
NOCHANGE: partition 1 is size 16773087. it cannot be grown
: パーティションが既にボリューム全体を拡張しており、拡張できないことを示します。ボリュームの変更が成功したことを確認します。
-
-
パーティションが拡張されたことを確認します。lsblkコマンドを実行します。これで、パーティションのサイズはボリュームサイズと同じになります。
-
-
ファイルシステムを拡張します。
-
拡張する必要があるファイルシステムの名前、サイズ、タイプ、およびマウントポイントを取得します。df -hTコマンドを実行します。
-
ファイルシステムを拡張するコマンドは、ファイルシステムのタイプによって異なります。前のステップで書き留めたファイルシステムのタイプに基づいて、次の正しいコマンドを選択します。
-
[XFS ファイルシステム] xfs_growfs コマンドを使用して、前のステップで書き留めたファイルシステムのマウントポイントを指定します。
トラブルシューティングのヒント
-
xfs_growfs: /data is not a mounted XFS filesystem
: 正しくないマウントポイントが指定されたか、ファイルシステムが XFS でないことを示します。マウントポイントとファイルシステムタイプを確認するには、df -hT コマンドを使用します。 -
data size unchanged, skipping
: ファイルシステムが既にボリューム全体を拡張していることを示します。ボリュームにパーティションがない場合は、ボリュームの変更が成功したことを確認します。ボリュームにパーティションがある場合は、ステップ 2 で説明されているように、パーティションが拡張されていることを確認します。
-
-
[Ext4 ファイルシステム] resize2fs コマンドを使用して、前のステップで書き留めたファイルシステムの名前を指定します。
トラブルシューティングのヒント
-
resize2fs: Bad magic number in super-block while trying to open /dev/xvda1
: ファイルシステムが Ext4 ではないことを示します。ファイルのシステムタイプを確認するには、df -hT コマンドを使用します。 -
open: No such file or directory while opening /dev/xvdb1
: 正しくないパーティションが指定されたことを示します。パーティションを検証するには、df -hT コマンドを使用します。 -
The filesystem is already 3932160 blocks long. Nothing to do!
: ファイルシステムが既にボリューム全体を拡張していることを示します。ボリュームにパーティションがない場合は、ボリュームの変更が成功したことを確認します。ボリュームにパーティションがある場合は、ステップ 2 で説明されているように、パーティションが拡張されていることを確認します。
-
-
[その他のファイルシステム] 手順については、ファイルシステムのドキュメントを参照してください。
-
-
ファイルシステムが拡張されたことを確認します。df -hT コマンドを使用して、ファイルシステムのサイズがボリュームサイズと等しいことを確認します。
-
次のいずれかの方法を使用して Windows インスタンスでファイルシステムを拡張します。