4月 21

先日の記事、Linux LVMのバックアップに引き続き、取得したバックアップからリカバリしてみたいと思います。

想定する状況としては、稼働していたサーバのハードディスクが物理的に故障して、新しいハードディスクに交換した環境にリカバリをする手順としてみたいと思います。

それでは、いってみよ~。

簡単に手順を、

 1.ハードディスクにパーティションを切る
 2.Physical Volumeを作成
 3.Volume Groupを作成
 4.Logical Volumeを作成
 5.フォーマット
 6.マウントしてリストア
 7.GRUBのインストール

のような感じになるかな。
今日は4.Logical Volumeを作成くらいまで、メモっておきます。

とりあえず、SystemRescueCDなどのを使ってサーバをBootしてください。

○ハードディスクにパーティションを作成する

ここでは、バックアップしたときに採取したパーティション情報を元にパーティションを作成していきます。
ちなみに、バックアップしたときに取った情報はこんな感じのものが取れているはず。

sda.txt

Disk /dev/sda: 15.0 GB, 15032385536 bytes
255 heads, 63 sectors/track, 1827 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes

デバイス Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 1566 12474472+ 8e Linux LVM
/dev/sda3 1567 1827 2096482+ 5 拡張領域
/dev/sda5 1567 1827 2096451 8e Linux LVM

この中から、sda1とsda2のパーティションを復元します。
(sda3とsda5はSnapShotを作成するために確保した領域なので、今はテストだし、とリアえず復元しなくてもいいかな。実際の有事の際には、全部復元した方がいいのは言うまでもありません。)

1.fdiskコマンドの実行

(コマンドの説明は省略します)

# fdisk[Ent]

まずはsda1のパーティションを作ります。
sda.txtによると、sda1はシリンダ1~13まで確保しているので、同じ分確保します。

Command (m for help): n[Ent]
Command action
e extended
p primary partition (1-4)
p[Ent]
Partition number (1-4): 1[Ent]
First cylinder (1-1566, default 1):[Ent]
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-1566, default 1566): 13[Ent]

続いて、sda2のパーティションを作成します。
sda.txtによるとシリンダ14~1566まで確保しているので、

Command (m for help): n[Ent]
Command action
e extended
p primary partition (1-4)
p[Ent]
Partition number (1-4): 2[Ent]
First cylinder (14-1566, default 14):[Ent]
Using default value 14
Last cylinder, +cylinders or +size{K,M,G} (14-1566, default 1566): [Ent]
Using default value 1566

2.今の状態を確認する

Command (m for help): p[Ent]

Disk /dev/sda: 12.8 GB, 12884901888 bytes
255 heads, 63 sectors/track, 1566 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xb2942442

Device Boot Start End Blocks Id System
/dev/sda1 1 13 104391 83 Linux
/dev/sda2 14 1566 12474472+ 83 Linux

3.パーティションのタイプを変更します

sda2についてはLVMにするので、パーティションのタイプをLVMにしておきます。

Command (m for help): t[Ent]
Partition number (1-4): 2[Ent]
Hex code (type L to list codes): 8e[Ent]
Changed system type of partition 2 to 8e (Linux LVM)

4.正しく変更できたか確認します

Command (m for help): p[Ent]

Disk /dev/sda: 12.8 GB, 12884901888 bytes
255 heads, 63 sectors/track, 1566 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xb2942442

Device Boot Start End Blocks Id System
/dev/sda1 1 13 104391 83 Linux
/dev/sda2 14 1566 12474472+ 8e Linux LVM

5.正しければパーティションの情報を書き込みます

Command (m for help): w[Ent]
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

○Physical Volumeを作成します

まずはバックアップの時に採取したpvdisplay.txtを確認しておきます。

pvdisplay.txt

--- Physical volume ---
PV Name /dev/sda2
VG Name VolGroup00
PV Size 11.90 GB / not usable 22.10 MB
Allocatable yes (but full)
PE Size (KByte) 32768
Total PE 380
Free PE 0
Allocated PE 380
PV UUID mfFs4y-3Cdg-QW94-KQmT-CgjP-J1R8-oo7jCr

1.pvcreateの実行

# pvcreate /dev/sda2[Ent]
Physical volume "/dev/sda2" successfully created

2.PhysicalVolumeが作成できたか確認します

# pvdisplay[Ent]
"/dev/sda2" is a new physical volume of "11.90 GB"
--- NEW Physical volume ---
PV Name /dev/sda2
VG Name
PV Size 11.90 GB
Allocatable NO
PE Size (KByte) 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID rJHUfz-xrHa-cgW2-B9JD-wT1H-5iWA-FYXjMW

作成できていることが確認できればOKです。

○Volume Groupを作成します

まずはバックアップの時に採取したvgdisplay.txtを確認しておきます。バックアップの時にはsda5も存在していたので、容量とかは無視します。

vgdisplay.txt

--- Volume group ---
VG Name VolGroup00
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 7
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 2
Act PV 2
VG Size 13.84 GB
PE Size 32.00 MB
Total PE 443
Alloc PE / Size 380 / 11.88 GB
Free PE / Size 63 / 1.97 GB
VG UUID OXBwvq-pYaS-YgeW-n95w-Fe8d-5muJ-JqdBDH

1.vgcreateの実行

# vgcreate VolGroup00 /dev/sda2[Ent]
Volume group "VolGroup00" successfully created

2.Volume Groupが作成できたか確認します

# vgdisplay[Ent]
--- Volume group ---
VG Name VolGroup00
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 1
Act PV 1
VG Size 11.89 GB
PE Size 4.00 MB
Total PE 3045
Alloc PE / Size 0 / 0
Free PE / Size 3045 / 11.89 GB
VG UUID Iv0Zqt-d7MW-evg8-ho3r-2vIm-qIT0-B6H23p

作成できていればOKです。

○Logical Volumeを作成します

まずはバックアップの時に採取したlvdisplay.txtを確認しておきます。

lvdisplay.txt

--- Logical volume ---
LV Name /dev/VolGroup00/LogVol00
VG Name VolGroup00
LV UUID Q0igGg-hIiq-Chke-nkF0-a6BV-50qO-ymqwSf
LV Write Access read/write
LV Status available
# open 1
LV Size 10.88 GB
Current LE 348
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
--- Logical volume ---
LV Name /dev/VolGroup00/LogVol01
VG Name VolGroup00
LV UUID eWCFvd-9Rxy-5cjL-liwt-pkOD-l53v-e71Mzm
LV Write Access read/write
LV Status available
# open 1
LV Size 1.00 GB
Current LE 32
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:1

1.lvcreateの実行

まずは、LogVol00から、

# lvcreate -L 10.88GB -n LogVol00 VolGroup00[Ent]
Rounding up size to full physical extent 10.88 GB
Logical volume "LogVol00" created

次に、LogVol01を作ります

# lvcreate -L 1G -n LogVol01 VolGroup00[Ent]
Logical volume "LogVol01" created

2.Logical Volumeが作成できたか確認します

# lvdisplay[Ent]
--- Logical volume ---
LV Name /dev/VolGroup00/LogVol00
VG Name VolGroup00
LV UUID v7eHBC-FSzy-100U-GfZc-qxSM-xf8S-XeSFmG
LV Write Access read/write
LV Status available
# open 0
LV Size 10.88 GB
Current LE 2786
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 252:0
--- Logical volume ---
LV Name /dev/VolGroup00/LogVol01
VG Name VolGroup00
LV UUID b4S7CS-GC2J-rskg-C2vH-3mRT-CVZw-oYm4cP
LV Write Access read/write
LV Status available
# open 0
LV Size 1.00 GB
Current LE 256
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 252:1

と、とりあえずLVMを構築したところまでやりました。
続きはまた明日か明後日か?

Trackback URL

Leave a Reply

*


デル株式会社
トレンドマイクロ・オンラインショップ