实验场景:
目前系统上的两块磁盘分区上后创建了逻辑卷,我们想把sdc这块硬盘上的逻辑卷迁移到其他盘上去。
思路:新加一块硬盘,然后创建同样大小(大于或等于)的分区,接着在该分区的基础上创建逻辑卷,然后通过命令把sdc上的PE块挪到新的磁盘上(系统会自动判断)
1、添加新硬盘
[root@centos6 ~]# echo "- - -" > /sys/class/scsi_host/host0/scan
[root@centos6 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 200G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 48.8G 0 part /
├─sda3 8:3 0 29.3G 0 part /data
├─sda4 8:4 0 1K 0 part
└─sda5 8:5 0 2G 0 part [SWAP]
sr0 11:0 1 8.1G 0 rom /mnt/cdrom
sr1 11:1 1 3.7G 0 rom
sdb 8:16 0 10G 0 disk
├─sdb1 8:17 0 2G 0 part /home
└─sdb2 8:18 0 8G 0 part
└─vg--sdb2-lv--sdb2 (dm-0) 253:0 0 13G 0 lvm /mnt/lvm_data
sdc 8:32 0 10G 0 disk
└─vg--sdb2-lv--sdb2 (dm-0) 253:0 0 13G 0 lvm /mnt/lvm_data
sdd 8:48 0 10G 0 disk
2、这里把整块硬盘直接使用,因此可直接创建物理卷。
[root@centos6 ~]# pvcreate /dev/sdd
Physical volume "/dev/sdd" successfully created
[root@centos6 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sdb2 vg-sdb2 lvm2 a--u 7.99g 0
/dev/sdc vg-sdb2 lvm2 a--u 10.00g 5.00g
/dev/sdd lvm2 ---- 10.00g 10.00g
3、加入卷组(加入的是和sdc上的同一卷组)
[root@centos6 ~]# vgextend vg-sdb2 /dev/sdd
Volume group "vg-sdb2" successfully extended
[root@centos6 ~]# vgdisplay
--- Volume group ---
VG Name vg-sdb2
System ID
Format lvm2
Metadata Areas 3
Metadata Sequence No 5
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 3
Act PV 3
VG Size 27.98 GiB
PE Size 4.00 MiB
Total PE 7163
Alloc PE / Size 3325 / 12.99 GiB
Free PE / Size 3838 / 14.99 GiB
VG UUID TVNGkV-GhVL-wmdl-mUAQ-StPx-bN5o-nn98xy
[root@centos6 ~]# pvdisplay
--- Physical volume ---
PV Name /dev/sdb2
VG Name vg-sdb2
PV Size 7.99 GiB / not usable 1.54 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 2045
Free PE 0
Allocated PE 2045
PV UUID f5WhrU-rYRI-Hqr5-Hdif-fxtH-VCyS-xx7ULu
--- Physical volume ---
PV Name /dev/sdc
VG Name vg-sdb2
PV Size 10.00 GiB / not usable 4.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 2559
Free PE 1279
Allocated PE 1280
PV UUID 3hhHF0-mbxq-QXho-tdCX-fRvg-SUkC-27OEET
--- Physical volume ---
PV Name /dev/sdd
VG Name vg-sdb2
PV Size 10.00 GiB / not usable 4.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 2559
Free PE 2559
Allocated PE 0
PV UUID z4g8gp-F9DB-wR
4、挪动sdc盘上的PE
[root@centos6 ~]# pvmove /dev/sdc ##把/dev/sdc中的已经被占用的PE空间挪到同一个卷组中的其他成员中
/dev/sdc: Moved: 1.6%
/dev/sdc: Moved: 100.0%
查看挪动后的物理卷状况。此时可以看到sdc盘上的Total PE 2559和Free PE 2559相等,因此说明挪动成功。
[root@centos6 ~]# pvdisplay
--- Physical volume ---
PV Name /dev/sdb2
VG Name vg-sdb2
PV Size 7.99 GiB / not usable 1.54 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 2045
Free PE 0
Allocated PE 2045
PV UUID f5WhrU-rYRI-Hqr5-Hdif-fxtH-VCyS-xx7ULu
--- Physical volume ---
PV Name /dev/sdc
VG Name vg-sdb2
PV Size 10.00 GiB / not usable 4.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 2559
Free PE 2559
Allocated PE 0
PV UUID 3hhHF0-mbxq-QXho-tdCX-fRvg-SUkC-27OEET
--- Physical volume ---
PV Name /dev/sdd
VG Name vg-sdb2
PV Size 10.00 GiB / not usable 4.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 2559
Free PE 1279
Allocated PE 1280
PV UUID z4g8gp-F9DB-wRGj-rlB7-mshH-kdNS-q2lYLT
5、把sdc挪出sdb2这个卷组,这步操作也就是缩减卷组。vgreduce vg-sdb2 /dev/sdc
[root@centos6 ~]# vgreduce vg-sdb2 /dev/sdc
Removed "/dev/sdc" from volume group "vg-sdb2"
[root@centos6 ~]# vgdisplay
--- Volume group ---
VG Name vg-sdb2
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 9
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 2
Act PV 2
VG Size 17.98 GiB
PE Size 4.00 MiB
Total PE 4604
Alloc PE / Size 3325 / 12.99 GiB
Free PE / Size 1279 / 5.00 GiB
VG UUID TVNGkV-GhVL-wmdl-mUAQ-StPx-bN5o-nn98xy
[root@centos6 ~]# pvdisplay
--- Physical volume ---
PV Name /dev/sdb2
VG Name vg-sdb2
PV Size 7.99 GiB / not usable 1.54 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 2045
Free PE 0
Allocated PE 2045
PV UUID f5WhrU-rYRI-Hqr5-Hdif-fxtH-VCyS-xx7ULu
--- Physical volume ---
PV Name /dev/sdd
VG Name vg-sdb2
PV Size 10.00 GiB / not usable 4.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 2559
Free PE 1279
Allocated PE 1280
PV UUID z4g8gp-F9DB-wRGj-rlB7-mshH-kdNS-q2lYLT
"/dev/sdc" is a new physical volume of "10.00 GiB"
--- NEW Physical volume ---
PV Name /dev/sdc
VG Name
PV Size 10.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID 3hhHF0-mbxq-QXho-tdCX-fRvg-SUkC-27OEET
查看挂载情况,挂在目录下的文件依旧存在,说明文件没有遭到损坏。
[root@centos6 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 200G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 48.8G 0 part /
├─sda3 8:3 0 29.3G 0 part /data
├─sda4 8:4 0 1K 0 part
└─sda5 8:5 0 2G 0 part [SWAP]
sr0 11:0 1 8.1G 0 rom /mnt/cdrom
sr1 11:1 1 3.7G 0 rom
sdb 8:16 0 10G 0 disk
├─sdb1 8:17 0 2G 0 part /home
└─sdb2 8:18 0 8G 0 part
└─vg--sdb2-lv--sdb2 (dm-0) 253:0 0 13G 0 lvm /mnt/lvm_data
sdc 8:32 0 10G 0 disk
sdd 8:48 0 10G 0 disk
└─vg--sdb2-lv--sdb2 (dm-0) 253:0 0 13G 0 lvm /mnt/lvm_data
[root@centos6 ~]# ls /mnt/lvm_data/
initramfs-2.6.32-696.el6.x86_64.img lost+found test.sql
此时如果想把sdc变为普通的物理卷,则把上面的物理卷删除即可。
[root@centos6 ~]# pvremove /dev/sdc