今までの流れをぶった切るようなお話ですが、職場のLinuxサーバのストレージ(HDD)空き容量が逼迫してきました。とするとHDD増設か?となるのが普通です。HDDを増設してフォーマットして、どこかにマウントポイントを作成してマウントしたりと、けっこう面倒です。
しかしこれは、LVM(Logical Volume Manager)という仕組みを使って、簡単に済ませられました。LVM自体は新しい技術ではないですし、Linuxのインストール時に勝手にLVMでディスクが構成されていますから、あとでHDDを足して、足した分空き容量を拡げる、ということが簡単にできるのです。
手順はこんな感じでした。
- 新しいHDDを装着します。
- fdiskで新しいパーティションを作成し(仮に/dev/sdb1とする)、パーティションタイプを8E(Linux LVM)とします。
- pvcreateで/dev/sdb1に物理ボリュームを作成します。/dev/sdb1のサイズと同じ物理ボリューム/dev/Volumes00のようなものができあがります。
- vgextendで既存のボリュームグループ(VolGroup00など)を拡張します。具体的には、前のステップで作成した/dev/Volumes00をボリュームグループVolGroup00に加えます。これで、このVolGroup00の容量が、/dev/sdb1の分だけ増えます。
- lvextendで論理ボリューム(/dev/LogVol00など)を拡張します。
- resize2fsでファイルシステムを拡張します。ext3ならマウント中でもリサイズOKです。
物理デバイス
↓
物理ボリューム
↓
ボリュームグループ
↓
論理ボリューム
↓
ファイルシステム
という流れですね。LVMについてはちょこっと書いて終わるようなものではないので深入りはしませんが、こういったコマンド操作で、ファイルの移動やコピーを行わずに、簡単に容量アップできます。こういうのを体験すると、やっぱりLinuxはよいなぁ、と思うのです。