LVMによるボリューム拡張
Rev.2を表示中。最新版はこちら。
概要
VMWare上のLinuxでディスク容量が足りなくなったので、ディスクを追加して、LVM2でボリュームサイズを拡張する。
前提
ディスクの状況
# df
Filesystem 1K-ブロック 使用 使用可 使用% マウント位置
/dev/mapper/vg_wing-lv_root
24593536 22759168 585088 98% /
/dev/sda1 198337 36603 151494 20% /boot
tmpfs 507528 1520 506008 1% /dev/shm
/のサイズを拡張する。/のファイルシステムはext4。
/はVolumeGroup:vg_wing内のLogicalVolume:lv_root内に割り当てられている。
手順の概要
(1) VMWareの仮想マシンの設定からディスクを追加(今回は20GB)(2) 追加したディスクにfdiskでLVM用の領域を作成
(3) (2)で作成したLVM領域にPhysicalVolumeを作成
(4) PhysicalVolumeをVolumeGroup(vg_wing)に追加
(5) /のLogicalVolume(lv_root)のサイズを拡張
(6) /のファイルシステムサイズをLogicalVolumeのサイズまで拡張
作業内容
まずは、VMWareの仮想マシンの設定からディスクを追加(今回は20GB分)。
Linuxを起動後、fdiskでLVM用の領域を作成する。
# fdisk /dev/sdb <== 今回追加したディスクは/dev/sdb デバイスは正常な DOS 領域テーブルも、Sun, SGI や OSF ディスクラベルも 含んでいません Building a new DOS disklabel with disk identifier 0x525a5e11. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content won't be recoverable. このディスクのシリンダ数は 2610 に設定されています。 間違いではないのですが、1024 を超えているため、以下の場合 に問題を生じうる事を確認しましょう: 1) ブート時に実行するソフトウェア (例. バージョンが古い LILO) 2) 別の OS のブートやパーティション作成ソフト (例. DOS FDISK, OS/2 FDISK) 警告: 領域テーブル 4 の不正なフラグ 0x0000 は w(書き込み)によって 正常になります コマンド (m でヘルプ): p ディスク /dev/sdb: 21.4 GB, 21474836480 バイト ヘッド 255, セクタ 63, シリンダ 2610 Units = シリンダ数 of 16065 * 512 = 8225280 バイト Disk identifier: 0x525a5e11 デバイス ブート 始点 終点 ブロック Id システム <== まだ領域はなにもない コマンド (m でヘルプ): n <== 領域作成 コマンドアクション e 拡張 p 基本領域 (1-4) p 領域番号 (1-4): 1 最初 シリンダ (1-2610, 初期値 1): <== 20GB分すべて割り当て 初期値 1 を使います Last シリンダ, +シリンダ数 or +size{K,M,G} (1-2610, 初期値 2610): 初期値 2610 を使います コマンド (m でヘルプ): p ディスク /dev/sdb: 21.4 GB, 21474836480 バイト ヘッド 255, セクタ 63, シリンダ 2610 Units = シリンダ数 of 16065 * 512 = 8225280 バイト Disk identifier: 0x525a5e11 デバイス ブート 始点 終点 ブロック Id システム /dev/sdb1 1 2610 20964793+ 83 Linux <== 領域が作成された コマンド (m でヘルプ): t <== 領域の種別をLVMに変更する 選択した領域 1 16進数コード (L コマンドでコードリスト表示): 8e 領域のシステムタイプを 1 から 8e (Linux LVM) に変更しました コマンド (m でヘルプ): p ディスク /dev/sdb: 21.4 GB, 21474836480 バイト ヘッド 255, セクタ 63, シリンダ 2610 Units = シリンダ数 of 16065 * 512 = 8225280 バイト Disk identifier: 0x525a5e11 デバイス ブート 始点 終点 ブロック Id システム /dev/sdb1 1 2610 20964793+ 8e Linux LVM <== Linux LVMに変更された コマンド (m でヘルプ): w <==ディスクに書き込んで終了 領域テーブルは交換されました! ioctl() を呼び出して領域テーブルを再読込みします。 ディスクを同期させます。
次に作成した領域(/dev/sdb1)にPhysicalVolumeを作成する。
# pvcreate /dev/sdb1 Physical volume "/dev/sdb1" successfully created # pvdisplay --- Physical volume --- PV Name /dev/sda2 VG Name vg_wing PV Size 24.80 GB / not usable 3.72 MB Allocatable yes (but full) PE Size (KByte) 4096 Total PE 6348 Free PE 0 Allocated PE 6348 PV UUID Lnejqg-BXFK-mEjP-JWwT-a7wD-F63Q-WANN3P 以下が新しく作成したPhysicalVolume "/dev/sdb1" is a new physical volume of "19.99 GB" --- NEW Physical volume --- PV Name /dev/sdb1 VG Name <== VolumeGroupはまだ割り当てていないので空 PV Size 19.99 GB Allocatable NO PE Size (KByte) 0 Total PE 0 Free PE 0 Allocated PE 0 PV UUID NcfcBj-uewt-C40I-EdPv-rcIh-malQ-Eu7acF
作成中...