🙆

EC2のストレージ拡張

2023/08/08に公開

EC2で後からストレージ(EBS:Elastic Block Store)を拡張する際はAWSでのストレージ設定の変更の他にEC2側で起動しているOS側でも拡張設定をする必要がある。


パーティションの拡張前の状態確認

本手順ではUbuntu22.04 LTS環境で8GBから32GBへの拡張を前提に記述している。
数値が変わるだけなので他の容量に変更時も同様の手順で拡張可能。

lsblk
NAME     MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
xvda     202:0    0    32G  0 disk
├─xvda1  202:1    0   7.9G  0 part /
├─xvda14 202:14   0     4M  0 part
└─xvda15 202:15   0   106M  0 part /boot/efi

拡張コマンド

sudo growpart /dev/xvda 1

名前解決関連でエラーが出ているが拡張自体は成功している、以降も同様

sudo: unable to resolve host ip-xxx-xx-xx-x: Temporary failure in name resolution
CHANGED: partition=1 start=227328 old: size=16549855 end=16777183 new: size=66881503 end=67108831

拡張後の状態確認

lsblk
NAME     MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
xvda     202:0    0    32G  0 disk
├─xvda1  202:1    0  31.9G  0 part /
├─xvda14 202:14   0     4M  0 part
└─xvda15 202:15   0   106M  0 part /boot/efi

ファイルシステムの拡張

パーティションの拡張だけではファイルシステムが拡張されていないので、以下のようにdfコマンドで確認すると/dev/root最大容量が拡張されていない。

df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/root       7.6G  7.6G  100K 100% /
tmpfs           3.9G     0  3.9G   0% /dev/shm
tmpfs           1.6G   17M  1.6G   2% /run
tmpfs           5.0M     0  5.0M   0% /run/lock
/dev/xvda15     105M  6.1M   99M   6% /boot/efi
tmpfs           795M  4.0K  795M   1% /run/user/1000

拡張コマンド

以下のコマンドでファイルシステムも拡張

sudo resize2fs /dev/xvda1
sudo: unable to resolve host ip-172-31-14-1: Temporary failure in name resolution
resize2fs 1.46.5 (30-Dec-2021)
Filesystem at /dev/xvda1 is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 4
The filesystem on /dev/xvda1 is now 8360187 (4k) blocks long.

拡張後の状態確認

df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/root        31G  7.6G   24G  25% /
tmpfs           3.9G     0  3.9G   0% /dev/shm
tmpfs           1.6G   17M  1.6G   2% /run
tmpfs           5.0M     0  5.0M   0% /run/lock
/dev/xvda15     105M  6.1M   99M   6% /boot/efi
tmpfs           795M  4.0K  795M   1% /run/user/1000

reference

Discussion