揮発性のメモ2

http://d.hatena.ne.jp/iww/

LVMの作り方

  • 物理ボリュームを作る
  • ボリュームグループを作る
  • 論理ボリュームを作る

物理ボリュームを作る

Pantora Networks » 1章 LVM入門

# pvcreate /dev/sda1

/dev/sda1を物理ボリュームとしてフォーマットする感じ
物理ボリュームの一覧はpvscanで一覧できる

# pvscan
pvscan -- reading all physical volumes (this may take a while...)
pvscan -- ACTIVE   PV "/dev/sda1" of VG "Hoge" [99.50 GB / 99.50 GB free]
pvscan -- inactive PV "/dev/sdb1" is in no VG  [100 GB]
pvscan -- total: 2 [200 GB] / in use: 1 [100 GB] / in no VG: 1 [100 GB]

詳細はpvdisplayで確認する
削除は出来ないけど基本的にどうでもいい

pvcreate -- ERROR: "/etc/lvmtab" doesn't exist or is unreadable; you may need to run vgscan

エラーが出たときは vgscanコマンドを実行すると /etc/lvmtabを作ってくれる。
/etc/lvmtabにはボリュームグループの一覧が書かれる(最初は空っぽ)

ボリュームグループを作る

# vgcreate -s256M Hoge /dev/sda1

これでHogeというボリュームグループが作成される。
-sでPE(PVの分割最小単位のサイズ)を指定する。今回は256MB。

削除するときには、一旦 非アクティブにする必要がある。

# vgchange -an Hoge
# vgremove Hoge

vgscanvgdisplayで作ったボリュームグループの一覧が見れる

# vgdisplay
--- Volume group ---
VG Name               Hoge
VG Access             read/write
VG Status             available/resizable
VG #                  0
MAX LV                256
Cur LV                0
Open LV               0
MAX LV Size           2 TB
Max PV                256
Cur PV                1
Act PV                1
VG Size               99.50 GB
PE Size               256 MB
Total PE              398
Alloc PE / Size       0 / 0
Free  PE / Size       398 / 99.50 GB
VG UUID               wB0jP3-ZMsZ-T5GC-kpiw-A1ks-GKyj-XoCJto

これで、ボリュームグループHoge/dev/sda1 を所属させた感じ。
ここから論理ボリュームを切り分けていく。

論理ボリュームを作る

lvcreate -l 398 -n Data Hoge

-l 398は使うPEの数を指定する。-Lでサイズとしても指定できる。とりあえずvgdisplayで見れる最大PE数を書いとけば使いきれる。

物理ボリュームをボリュームグループに追加

ITmedia エンタープライズ:特集:LVMによるディスクパーティションの動的化(後編) (1/5) (説明は中途半端)

# vgextend Hoge /dev/sdb1

/dev/sdb1をボリュームグループHogeに追加する
追加したばかりだと容量は使ってないのでpvscanでこう見える。

# pvscan
pvscan -- reading all physical volumes (this may take a while...)
pvscan -- ACTIVE   PV "/dev/sda1" of VG "Hoge" [99.50 GB / 0 free]
pvscan -- ACTIVE   PV "/dev/sdb1" of VG "Hoge" [99.50 GB / 99.50 GB free]
pvscan -- total: 2 [200 GB] / in use: 2 [200 GB] / in no VG: 0 [0]

論理ボリュームに容量を追加する

使える容量が用意できただけなので、論理ボリュームに追加しないとディスクサイズは大きくならない。

# lvextend -L 150G /dev/mysqlarea1/Hoge

余っている分だけサイズを指定する。lvextendを使えば以前より小さいサイズを指定出来ないので事故が無い、はず。


その上のファイルシステムのサイズ拡張は適当にやる。ext2resizeとかなんとか。