wiki:linux/lvm

LVMメモ

LVMの物理ボリュームは、/dev/sdbなどのディスク単位で作成しよう。物理単位で作成していれば、ストレージやハイパーバイザの機能でストレージサイズを拡張するとき、

# pvresize

でLVMの物理ボリュームのサイズを拡張できます。

運悪く/dev/sdb1など、パーティションに作成してしまった場合、 fdiskでパーティションを作り直すことでLVMの物理ボリュームを 拡張できます。

# fdisk /dev/sdb
コマンド (m でヘルプ): x

上級者コマンド (m でヘルプ): p
...
Nr AF  Hd Sec  Cyl  Hd Sec  Cyl       開始      サイズ ID
 1 00   0   2    0  70   5    1          1      20479 8e

パーティションの開始位置を確認しておきます。ここでは1です。 パーティションを削除して拡張したサイズで作成しなおします。

上級者コマンド (m でヘルプ): r

コマンド (m でヘルプ): d
選択した領域 1

コマンド (m でヘルプ): n
コマンドアクション
   e   拡張
   p   基本パーティション (1-4)
p
パーティション番号 (1-4): 1
最初 シリンダ (1-115, 初期値 1): 1
Last シリンダ (1-115, 初期値 1): 155

コマンド (m でヘルプ): t
選択した領域 1
16進数コード (L コマンドでコードリスト表示): 8e
領域のシステムタイプを 1 から 8e (Linux LVM) に変更しました

コマンド (m でヘルプ): p
...
デバイス ブート      始点        終点     ブロック   Id  システム
/dev/sdc1               1         115       20410   8e  Linux LVM

ここで、パーティションの詳細を上級者モードで確認します。

コマンド (m でヘルプ): x

上級者コマンド (m でヘルプ): p
...
Nr AF  Hd Sec  Cyl  Hd Sec  Cyl       開始      サイズ ID
 1 00   1   1    0  70   5  114          5      40820 8e
...

5になっています。先ほどは1だったので、作り直したパーティションは開始位置がずれていることになります。 bコマンドで、パーティションの開始位置を1に修正します。

上級者コマンド (m でヘルプ): b
パーティション番号 (1-4): 1
新規データ開始位置 (1-40820, 初期値 5): 1
上級者コマンド (m でヘルプ): p

Nr AF  Hd Sec  Cyl  Hd Sec  Cyl       開始      サイズ ID
 1 00   1   1    0  70   5  114          1      40824 8e

書き込んで完了!!

上級者コマンド (m でヘルプ): w
パーティションテーブルは変更されました!

あとはリブート or partprobe実行(RHEL5)してresizeすれば拡張できます。

# pvresize /dev/sdb1 

RHEL6では、partprobeでOS内のパーティション情報を更新することができません。どーしてもやりたい場合は、RHEL5のpartprobeを無理やりRHEL6で利用することにより更新することができます。