不要な Disk を LVM から外すために、まずは LVM 上のデータを移動して Disk を空にする まで。 File System の状態を確認する。
$ df -h
Filesystem サイズ 使用 残り 使用% マウント位置
/dev/hda5 110G 3.8G 101G 4% /
/dev/mapper/raid3-root
112G 89G 23G 80% /opt
/opt は RAID 上の LVM だったはず。
$ cat /proc/mdstat
Personalities : [raid1]
md3 : active raid1 hdc3[1]
116856704 blocks [2/1] [_U]
unused devices: <none>
やはり、 Disk 1個で RAID1 になっている模様。。 はやくミラーしなきゃ!
$ sudo /sbin/mdadm --detail --scan
ARRAY /dev/md3 level=raid1 num-devices=2 UUID=faedf221:a27d31bb:7199f477:4afeb281
devices=/dev/hdc3
$ sudo /sbin/mdadm --detail /dev/md3
/dev/md3:
Version : 00.90.01
Creation Time : Thu Sep 1 11:20:51 2005
Raid Level : raid1
Array Size : 116856704 (111.44 GiB 119.66 GB)
Device Size : 116856704 (111.44 GiB 119.66 GB)
Raid Devices : 2
Total Devices : 1
Preferred Minor : 3
Persistence : Superblock is persistent
Update Time : Sun Apr 9 19:29:23 2006
State : clean, degraded
Active Devices : 1
Working Devices : 1
Failed Devices : 0
Spare Devices : 0
Number Major Minor RaidDevice State
0 0 0 -1 removed
1 22 3 1 active sync /dev/hdc3
UUID : faedf221:a27d31bb:7199f477:4afeb281
Events : 0.6076544
うへー、 2006/04 からほったらかしてるのか。。 たぶん、この頃が Django にハマった時期でしょう。 Ni!
Disk のパーティションを見てみる。
$ sudo /sbin/fdisk -l /dev/hda
Disk /dev/hda: 250.0 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes
デバイス Boot Start End Blocks Id System
/dev/hda1 * 1 13 104391 83 Linux
/dev/hda2 14 62 393592+ 82 Linux スワップ
/dev/hda3 14594 30401 126977760 8e Linux LVM
/dev/hda4 63 14593 116720257+ 5 拡張領域
/dev/hda5 63 14593 116720226 83 Linux
領域テーブル項目がディスクの順序と一致しません
$ sudo /sbin/fdisk -l /dev/hdc
Disk /dev/hdc: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes
デバイス Boot Start End Blocks Id System
/dev/hdc1 * 2 13 96390 83 Linux
/dev/hdc2 14 45 257040 82 Linux スワップ
/dev/hdc3 46 14593 116856810 fd Linux raid 自動検出
むふー。 RAID1 に追加しようとしている領域 /dev/hda3 は LVM に参加している模様。
$ sudo /usr/sbin/pvdisplay
--- Physical volume ---
PV Name /dev/md3
VG Name raid3
PV Size 111.44 GB / not usable 0
Allocatable yes
PE Size (KByte) 32768
Total PE 3566
Free PE 3566
Allocated PE 0
PV UUID 1gcxri-t7QV-Oma5-1MlP-wl82-tgKm-uvnx4j
--- Physical volume ---
PV Name /dev/hda3
VG Name raid3
PV Size 121.06 GB / not usable 0
Allocatable yes
PE Size (KByte) 32768
Total PE 3874
Free PE 308
Allocated PE 3566
PV UUID PlIvr3-HsCV-1kMK-H9nq-EikG-ytQM-cvSEQU
だはー。 データのすべては /dev/hda3 に載っている! /dev/md3 の Allocated PE は ゼロ。 これでは、 RAID の意味が無いねー。 それにしても、よくこんな状態で放置していたものだw と苦笑い。
/dev/hda3 上のデータをどかす。 Physical volume (PV) 間でデータの移動を行う。
$ sudo /usr/sbin/pvmove /dev/hda3 /dev/md3
Unable to start dmeventd.
Unable to start dmeventd.
raid3-pvmove0: event registration failed: そのようなプロセスはありません
/dev/hda3: Moved: 0.1%
/dev/hda3: Moved: 0.2%
120GB だもんで、しばらく待つ。
$ sudo /usr/sbin/pvdisplay
--- Physical volume ---
PV Name /dev/md3
VG Name raid3
PV Size 111.44 GB / not usable 0
Allocatable yes (but full)
PE Size (KByte) 32768
Total PE 3566
Free PE 0
Allocated PE 3566
PV UUID 1gcxri-t7QV-Oma5-1MlP-wl82-tgKm-uvnx4j
--- Physical volume ---
PV Name /dev/hda3
VG Name raid3
PV Size 121.06 GB / not usable 0
Allocatable yes
PE Size (KByte) 32768
Total PE 3874
Free PE 308
Allocated PE 3566
PV UUID PlIvr3-HsCV-1kMK-H9nq-EikG-ytQM-cvSEQU
領域としては /dev/md3 の方では確保が済んで、 /dev/md3 の Free PE は無くなっている。 pvmove コマンドを実行した後は、進捗が表示されるけれども Ctrl+C で切ってもバックグランドで動いているみたい。 pvdisplay コマンドではまだ /dev/hda3 の Allocated PE が 0 になっていなかったので、もう一度、
$ sudo /usr/sbin/pvmove /dev/hda3 /dev/md3
Detected pvmove in progress for /dev/hda3
Ignoring remaining command line arguments
/dev/hda3: Moved: 100.0%
$ sudo /usr/sbin/pvdisplay /dev/hda3
--- Physical volume ---
PV Name /dev/hda3
VG Name raid3
PV Size 121.06 GB / not usable 0
Allocatable yes
PE Size (KByte) 32768
Total PE 3874
Free PE 3874
Allocated PE 0
PV UUID PlIvr3-HsCV-1kMK-H9nq-EikG-ytQM-cvSEQU
Allocated PE が ゼロ になりデータの移動は完了。 次、 Volume group (VG) から PV /dev/hda3 を外す。
$ sudo /usr/sbin/vgdisplay
--- Volume group ---
VG Name raid3
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 11
VG Access read/write
VG Status resizable
MAX LV 255
Cur LV 1
Open LV 1
Max PV 255
Cur PV 2
Act PV 2
VG Size 232.50 GB
PE Size 32.00 MB
Total PE 7440
Alloc PE / Size 3566 / 111.44 GB
Free PE / Size 3874 / 121.06 GB
VG UUID ZYKw3N-yKo2-mKia-uAfO-2afi-Hbt5-4bwXgG
$ sudo /usr/sbin/vgreduce raid3 /dev/hda3
Removed "/dev/hda3" from volume group "raid3"
$ sudo /usr/sbin/vgdisplay
--- Volume group ---
VG Name raid3
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 12
VG Access read/write
VG Status resizable
MAX LV 255
Cur LV 1
Open LV 1
Max PV 255
Cur PV 1
Act PV 1
VG Size 111.44 GB
PE Size 32.00 MB
Total PE 3566
Alloc PE / Size 3566 / 111.44 GB
Free PE / Size 0 / 0
VG UUID ZYKw3N-yKo2-mKia-uAfO-2afi-Hbt5-4bwXgG
VG の Free PE / Size が ゼロ になった。 /dev/hda3 を LVM から解放する。
$ sudo /usr/sbin/pvdisplay /dev/hda3
--- NEW Physical volume ---
PV Name /dev/hda3
VG Name
PV Size 121.10 GB
Allocatable NO
PE Size (KByte) 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID PlIvr3-HsCV-1kMK-H9nq-EikG-ytQM-cvSEQU
$ sudo /usr/sbin/pvremove /dev/hda3
Labels on physical volume "/dev/hda3" successfully wiped
PV のメンバから /dev/hda3 が消滅。
$ sudo /usr/sbin/pvdisplay
--- Physical volume ---
PV Name /dev/md3
VG Name raid3
PV Size 111.44 GB / not usable 0
Allocatable yes (but full)
PE Size (KByte) 32768
Total PE 3566
Free PE 0
Allocated PE 3566
PV UUID 1gcxri-t7QV-Oma5-1MlP-wl82-tgKm-uvnx4j
ここまでで、 LVM 上のデータ移動と Disk 領域の解放は終了。
