目次
概要
LVM(Logical Volume Manager)は、ディスクのパーティションを柔軟に管理できる強力な仕組みです。物理ディスクを仮想的なストレージにまとめて、論理ボリュームとして自由にサイズ変更やスナップショットを作成できます。特に以下の操作を柔軟に行いたいときに便利です。
- パーティションのサイズ変更
- ディスクの追加・交換
- スナップショットによるバックアップ
LVM の基本構成
LVM は以下の3階層構造で構成されます。
物理ボリューム(PV) → ボリュームグループ(VG) → 論理ボリューム(LV)
1. 物理ボリューム(PV: Physical Volume)
ディスクやパーティションを LVM に対応させたもの。
2. ボリュームグループ(VG: Volume Group)
複数の PV を束ねて大きなストレージ空間を構成するもの。
3. 論理ボリューム(LV: Logical Volume)
VG 内に作成され、実際のファイルシステムを配置する領域。
使用ツールと設定ファイル
| ツール/設定 | 説明 |
|---|---|
lvm | 対話式のLVM操作用シェル |
/etc/lvm/lvm.conf | LVMの設定ファイル(キャッシュやロック方式など) |
物理ボリューム(PV)の操作
作成
sudo pvcreate /dev/sdb
削除
sudo pvremove /dev/sdb
状態確認
sudo pvdisplay
ボリュームグループ(VG)の操作
作成
sudo vgcreate vg01 /dev/sdb
物理ボリュームの追加
sudo vgextend vg01 /dev/sdc
物理ボリュームの削除
sudo vgreduce vg01 /dev/sdc
名前変更
sudo vgrename vg01 vg_data
有効化/無効化
sudo vgchange -a y vg01 # 有効化
sudo vgchange -a n vg01 # 無効化
状態確認
sudo vgdisplay
論理ボリューム(LV)の操作
作成
sudo lvcreate -L 10G -n lv_data vg01
削除
sudo lvremove /dev/vg01/lv_data
サイズ拡張(ext4 の場合)
sudo lvextend -L +5G /dev/vg01/lv_data
sudo resize2fs /dev/vg01/lv_data
サイズ縮小(ext4 の場合)
※縮小は誤るとデータ消失のリスクがあるため注意!
sudo umount /dev/vg01/lv_data
sudo e2fsck -f /dev/vg01/lv_data
sudo resize2fs /dev/vg01/lv_data 5G
sudo lvreduce -L 5G /dev/vg01/lv_data
sudo mount /dev/vg01/lv_data /mnt
名前変更
sudo lvrename vg01 lv_oldname lv_newname
有効化/無効化
sudo lvchange -a y /dev/vg01/lv_data # 有効化
sudo lvchange -a n /dev/vg01/lv_data # 無効化
状態確認
sudo lvdisplay
スナップショットの作成と使用
スナップショットを使うことで、ある時点の状態を保持し、バックアップや復元が可能になります。
sudo lvcreate -s -L 1G -n lv_snap /dev/vg01/lv_data
※-s はスナップショットを意味します。
トラブル対策のヒント
- LVM のマウント失敗:
vgchange -a yを忘れていないか? - スナップショットの肥大化:定期的に削除を検討
- UUID 競合:
blkidでUUIDの確認を行う
まとめ
LVM を使いこなせると、ストレージ管理が格段に柔軟になります。実際の操作では「バックアップを取る」「状態を確認する」ことを忘れずに、安全に作業を行いましょう。
コメント