目的
Ubuntu Server 22.04 で LVM に Disk を追加する備忘録
条件
/dev/sdb
を追加する- VG名は
ubuntu-vg
- LV 名は
ubuntu-lv
流れ
- 各種確認
- PV 作成
- VG 拡張 (既存 VG に 作成した PV を追加)
- LV 拡張
- 各種確認
コマンドのみ欲しい人用
# 確認 sudo fdisk -l sudo lsblk dh -hT # 変数作成して拡張 _pv='/dev/sdb' # 追加するデバイスの PATH _lv='/dev/ubuntu-vg/ubuntu-lv' # 拡張したい LV の PATH sudo pvcreate ${_pv} sudo vgextend ubuntu-vg ${_pv} sudo lvextend --resizefs --extents +100%FREE ${_lv} # 確認 sudo fdisk -l sudo lsblk dh -hT
各種確認
df -hT df -hT --type=ext4 # 拡張したい LV が ext4 の場合 sudo lsblk sudo lsblk /dev/sd* # 追加したディスクを確認する sudo fdisk -l # 例 .. 省略 Disk /dev/sdb: 30 GiB, 32212254720 bytes, 62914560 sectors .. 省略
/dev/sdb
を PV にする
sudo pvcreate /dev/sdb # 確認 (どれかでいい) sudo pvs # 簡易表示 sudo pvdisplay # 詳細表示 (全 PV を表示する) sudo pvdisplay /dev/sdb # 詳細表示 (/dev/sdb のみを表示する)
既存の VG に /dev/sdb
PV を追加する
sudo vgextend ubuntu-vg /dev/sdb # 確認 (どれかでいい) sudo vgdisplay -v ubuntu-vg sudo pvdisplay /dev/sdb sudo pvs
既存の LV を拡張する
FREE の領域を 100% 拡張し、全て使用する設定にする
# -l (--extents) オプションで増やす論理ボリュームのサイズに応じて # エクステントの数を指定できる # --resizefs でファイルシステムも含めて拡張してくれる sudo lvextend --resizefs --extents +100%FREE /dev/ubuntu-vg/ubuntu-lv
sample output
$ sudo lvextend --resizefs --extents +100%FREE /dev/ubuntu-vg/ubuntu-lv Size of logical volume ubuntu-vg/ubuntu-lv changed from <18.50 GiB (4735 extents) to 48.49 GiB (12414 extents). Logical volume ubuntu-vg/ubuntu-lv successfully resized. resize2fs 1.46.5 (30-Dec-2021) Filesystem at /dev/mapper/ubuntu--vg-ubuntu--lv is mounted on /; on-line resizing required old_desc_blocks = 3, new_desc_blocks = 7 The filesystem on /dev/mapper/ubuntu--vg-ubuntu--lv is now 12711936 (4k) blocks long. $
確認
sudo lsblk /dev/sd[ab] df -hT --type=ext4 sudo lvdisplay # 以下は任意 sudo lvs sudo vgs # VFree が 0 になっていること sudo pvs # PFree が 0 になっていること
感想
lvextend --resizefs
が個人的にとてもうれしい。ファイルシステムの拡張の手間が減った