Hyper-Vで論理ボリュームのサイズが、仮想ディスクの半分しかないということがあります。Hyper-Vの仮想マシン上にUbuntuサーバーをインストールしたのですが、ルートボリュームが半分しかないということに気が付きました。仮想ディスクを作るときに指定したサイズは256GBなのですが、Ubuntu Serverのウィザードに任せておいたら128GBだけ使われている状態になっていました。
現在の状態の確認
df
を使ってマシンの現在の状態を確認します。
$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 3.9G 0 3.9G 0% /dev
tmpfs 791M 1.1M 790M 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv 125G 11G 109G 9% /
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/loop1 62M 62M 0 100% /snap/core20/1242
/dev/loop2 56M 56M 0 100% /snap/core18/2246
/dev/loop7 62M 62M 0 100% /snap/core20/1270
/dev/loop4 43M 43M 0 100% /snap/snapd/14066
/dev/loop5 44M 44M 0 100% /snap/snapd/14295
/dev/loop6 68M 68M 0 100% /snap/lxd/21835
/dev/loop3 68M 68M 0 100% /snap/lxd/21803
/dev/loop0 56M 56M 0 100% /snap/core18/2253
/dev/sda2 976M 204M 706M 23% /boot
/dev/sda1 511M 5.3M 506M 2% /boot/efi
tmpfs 791M 0 791M 0% /run/user/1000
ルートボリュームのサイズは125GBです。
空き領域を埋める
LVMの論理ボリュームを拡張するには、論理ボリュームへのパスが必要になります。パスを調べるためlvdisplay
を使用します。
$ sudo lvdisplay
--- Logical volume ---
LV Path /dev/ubuntu-vg/ubuntu-lv
LV Name ubuntu-lv
VG Name ubuntu-vg
LV UUID jOhKhn-FPg7-ZtyK-tK10-fF2g-pPUL-Vt4Yaa
LV Write Access read/write
LV Creation host, time ubuntu-server, 2021-05-27 03:29:41 +0000
LV Status available
# open 1
LV Size 127.25 GiB
Current LE 32576
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
lvdisplay
は論理ボリュームの情報を出力します。出力された情報からパスは/dev/ubuntu-vg/ubuntu-lv
であることが分かります。
論理ボリュームを拡張するには lvextend
を使用します。
$ sudo lvextend -l+100%FREE /dev/ubuntu-vg/ubuntu-lv
Size of logical volume ubuntu-vg/ubuntu-lv changed from 127.25 GiB (32576 extents) to <254.50 GiB (65151 extents).
Logical volume ubuntu-vg/ubuntu-lv successfully resized.
コマンドライン引数の先頭で拡張する容量を指定します。-l+100%FREE
は空き領域を全て使うという意味です。2番目の引数にはパスを指定します。
次に実際のファイルシステムに変更を反映するため、resize2fs
を使用します。
$ sudo resize2fs /dev/ubuntu-vg/ubuntu-lv
resize2fs 1.45.5 (07-Jan-2020)
Filesystem at /dev/ubuntu-vg/ubuntu-lv is mounted on /; on-line resizing required
old_desc_blocks = 16, new_desc_blocks = 32
The filesystem on /dev/ubuntu-vg/ubuntu-lv is now 66714624 (4k) blocks long.
resize2fs
は少し時間がかかることがあります。
成功したかどうかdf
を使って確認します。
$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 3.9G 0 3.9G 0% /dev
tmpfs 791M 1.1M 790M 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv 251G 11G 229G 5% /
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/loop1 62M 62M 0 100% /snap/core20/1242
/dev/loop2 56M 56M 0 100% /snap/core18/2246
/dev/loop7 62M 62M 0 100% /snap/core20/1270
/dev/loop4 43M 43M 0 100% /snap/snapd/14066
/dev/loop5 44M 44M 0 100% /snap/snapd/14295
/dev/loop6 68M 68M 0 100% /snap/lxd/21835
/dev/loop3 68M 68M 0 100% /snap/lxd/21803
/dev/loop0 56M 56M 0 100% /snap/core18/2253
/dev/sda2 976M 204M 706M 23% /boot
/dev/sda1 511M 5.3M 506M 2% /boot/efi
tmpfs 791M 0 791M 0% /run/user/1000
成功しました。ルートボリュームの容量は251GBになりました。