ディスク交換→LVM拡張
HDD交換し、LVMを拡張する方法です。VM環境で実施。
LVMを拡張ついでに、VG拡張も実施しています。
※数回やったことがあります。
旧HDD5GB→新HDD20GB
※拡張するLVMはVolGroup00でテスト環境なので全容量を割り当てる(切るのが面倒w)
- データ移行
ツールG4Lを使用して、データをバックアップ→HDD交換後にリストアする
※G4Lの使用方法 - 現在のディスク容量を確認する
# df -h Filesystem サイズ 使用 残り 使用% マウント位置 /dev/mapper/VolGroup00-LogVol00 4.3G 2.8G 1.4G 68% / /dev/sda1 99M 25M 70M 26% /boot tmpfs 125M 0 125M 0% /dev/shm
※G4Lでリストアするだけではもちろんディスク容量は小さいまま - VGを確認する
# vgdisplay VolGroup00 --- Volume group --- VG Name VolGroup00 System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 3 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 2 Max PV 0 Cur PV 1 Act PV 1 VG Size 4.88 GB PE Size 32.00 MB Total PE 156 Alloc PE / Size 156 / 4.88 GB Free PE / Size 0 / 0 VG UUID 327z1U-sD31-u5mb-otyC-ZgD0-Khb3-MVBe09
※Free PEが開いてないのでやはり空きは全くない。 - パーティションを確認する
# fdisk -l Disk /dev/sda: 21.4 GB, 21474836480 bytes 255 heads, 63 sectors/track, 2610 cylinders Units = シリンダ数 of 16065 * 512 = 8225280 bytes デバイス Boot Start End Blocks Id System /dev/sda1 * 1 13 104391 83 Linux /dev/sda2 14 652 5132767+ 8e Linux LVM
- パーティションサイズを変更する
※流れ的に一度領域を削除後に頭のシリンダ番号を同じにして再作成します(後ろだけ変更する感じ)
# fdisk /dev/sda このディスクのシリンダ数は 2610 に設定されています。 間違いではないのですが、1024 を超えているため、以下の場合 に問題を生じうる事を確認しましょう: 1) ブート時に実行するソフトウェア (例. バージョンが古い LILO) 2) 別の OS のブートやパーティション作成ソフト (例. DOS FDISK, OS/2 FDISK) コマンド (m でヘルプ): p Disk /dev/sda: 21.4 GB, 21474836480 bytes 255 heads, 63 sectors/track, 2610 cylinders Units = シリンダ数 of 16065 * 512 = 8225280 bytes デバイス Boot Start End Blocks Id System /dev/sda1 * 1 13 104391 83 Linux /dev/sda2 14 652 5132767+ 8e Linux LVM コマンド (m でヘルプ): d 領域番号 (1-4): 2 コマンド (m でヘルプ): n コマンドアクション e 拡張 p 基本領域 (1-4) p 領域番号 (1-4): 2 最初 シリンダ (14-2610, default 14): そのままエンター Using default value 14 終点 シリンダ または +サイズ または +サイズM または +サイズK (14-2610, default 2610): そのままエンター Using default value 2610 コマンド (m でヘルプ): p Disk /dev/sda: 21.4 GB, 21474836480 bytes 255 heads, 63 sectors/track, 2610 cylinders Units = シリンダ数 of 16065 * 512 = 8225280 bytes デバイス Boot Start End Blocks Id System /dev/sda1 * 1 13 104391 83 Linux /dev/sda2 14 2610 20860402+ 83 Linux コマンド (m でヘルプ): t 領域番号 (1-4): 2 16進数コード (L コマンドでコードリスト表示): 8e 領域のシステムタイプを 2 から 8e (Linux LVM) に変更しました コマンド (m でヘルプ): p Disk /dev/sda: 21.4 GB, 21474836480 bytes 255 heads, 63 sectors/track, 2610 cylinders Units = シリンダ数 of 16065 * 512 = 8225280 bytes デバイス Boot Start End Blocks Id System /dev/sda1 * 1 13 104391 83 Linux /dev/sda2 14 2610 20860402+ 8e Linux LVM コマンド (m でヘルプ): w 領域テーブルは交換されました! ioctl() を呼び出して領域テーブルを再読込みします。 警告: 領域テーブルの再読込みがエラー 16 で失敗しました: デバイスもしくはリソースがビジー状態です。 カーネルはまだ古いテーブルを使っています。 新しいテーブルは次回リブート時に使えるようになるでしょう。 ディスクを同期させます。
※システム領域の拡張なので、起動中に拡張できません。
メッセージ通り、一度再起動すると反映するようなので再起動します。 - 再起動します
# shutdown -r now
- VGを確認する
# vgdisplay VolGroup00 --- Volume group --- VG Name VolGroup00 System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 3 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 2 Max PV 0 Cur PV 1 Act PV 1 VG Size 4.88 GB PE Size 32.00 MB Total PE 156 Alloc PE / Size 156 / 4.88 GB Free PE / Size 0 / 0 VG UUID 327z1U-sD31-u5mb-otyC-ZgD0-Khb3-MVBe09
※fdiskするだけではFree PEは増えない - pvresizeをする
※手順が違ったので直してます。確かこれで大丈夫なはずです。# pvresize /dev/sda2
- pvscanをする
# pvscan
- 再びVGを確認する
# vgdisplay VolGroup00 --- Volume group --- VG Name VolGroup00 System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 9 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 2 Max PV 0 Cur PV 1 Act PV 1 VG Size 19.88 GB PE Size 32.00 MB Total PE 636 Alloc PE / Size 156 / 4.88 GB Free PE / Size 480 / 15.00 GB VG UUID 327z1U-sD31-u5mb-otyC-ZgD0-Khb3-MVBe09
※Free PEが無事15GBになりました。
いらないコマンドが入っていたので修正(2011/08/01)
LV削除 |
CentOS |
G4Lを使用してバックアップ/リストア |