逻辑卷管理器(LVM)
允许对卷进行方便操作的抽象层,包括重新设定文件系统的大小
允许在多个物理设备间重新组织文件系统
•将设备指定为物理卷
•用一个或者多个物理卷来创建一个卷组
•物理卷是用固定大小的物理区域(
Physical Extent
,
PE
)来定义的
•在物理卷上创建的逻辑卷
是由物理区域(
PE
)组成
•可以在逻辑卷上创建文件系统
LVM介绍
uLVM: Logical Volume Manager,
Version: 2
udm: device mapper::将一个或多个底层块设备组织成一个逻辑设备的模块
u设备名: /dev/dm-#
u软链接:
/dev/mapper/VG_NAME-LV_NAME
/dev/mapper/vol0-root
/dev/VG_NAME/LV_NAME
/dev/vol0/root
LVM更改文件系统的容量
uLVM
可以弹性的更改LVM的容量
通过交换PE来进行资料的转换,将原来LV内的PE转移到其他的设备中以降低LV的容量,或将其他设备中的PE加到LV中以加大容量
pv管理工具
u显示pv信息
pvs:简要pv信息显示
pvdisplay
u创建pv
pvcreate /dev/DEVICE
vg管理工具
显示卷组
vgs
vgdisplay
创建卷组
vgcreate [-s #[kKmMgGtTpPeE]] VolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]
管理卷组
vgextend VolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]
vgreduce VolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]
删除卷组
先做pvmove,再做vgremove
lv管理工具
u显示逻辑卷
lvs
Lvdisplay
u创建逻辑卷
lvcreate-L #[mMgGtT] -n NAME VolumeGroup
lvcreate-l 60%VG -n mylvtestvg
lvcreate-l 100%FREE -n yourlvtestvg
u删除逻辑卷
lvremove/dev/VG_NAME/LV_NAME
u重设文件系统大小
fsadm[options] resize device [new_size[BKMGTEP]]
resize2fs [-f] [-F] [-M] [-P] [-p] device [new_size]
扩展和缩减逻辑卷
u扩展逻辑卷:
lvextend-L [+]#[mMgGtT] /dev/VG_NAME/LV_NAME
resize2fs /dev/VG_NAME/LV_NAME
lvresize-r -l
+100%FREE
/dev/
VG_NAME/LV_NAME
u缩减逻辑卷:
umount/dev/VG_NAME/LV_NAME
e2fsck -f /dev/VG_NAME/LV_NAME
resize2fs /dev/VG_NAME/LV_NAME #[mMgGtT]
lvreduce-L [-]#[mMgGtT] /dev/VG_NAME/LV_NAME
mount
跨主机迁移卷组
源计算机上
1 在旧系统中,umount所有卷组上的逻辑卷
2 vgchange–a n vg0
lvdisplay
3 vgexportvg0
pvscan
vgdisplay
拆下旧硬盘
在目标计算机上
4 在新系统中安装旧硬盘,并vgimportvg0.
5 vgchange–ay vg0
6 mount所有卷组上的逻辑卷
创建逻辑卷示例
创建物理卷
pvcreate /dev/sda3
为卷组分配物理卷
vgcreate vg0 /dev/sda3
从卷组创建逻辑卷
lvcreate -L 256M -n data vg0
mke2fs -j /dev/vg0/data
mount /dev/vg0/data /mnt/data
逻辑卷管理器快照
u快照是特殊的逻辑卷,它是在生成快照时存在的逻辑卷的准确拷贝
u对于需要备份或者复制的现有数据临时拷贝以及其它操作来说,快照是最合适的选择
u快照只有在它们和原来的逻辑卷不同时才会消耗空间
Ø在生成快照时会分配给它一定的空间,但只有在原来的逻辑卷或者快照有所改变才会使用这些空间
Ø当原来的逻辑卷中有所改变时,会将旧的数据复制到快照中。
Ø快照中只含有原来的逻辑卷中更改的数据或者自生成快照后的快照中更改的数据
Ø建立快照的卷大小只需要原始逻辑卷的15%~20%就够了,也可以使用lvextend放大快照
逻辑卷管理器快照
u
快照就是将当时的系统信息记录下来,就好像照相一般,若将来有任何数据改动了,则原始数据会被移动到快照区,没有改动的区域则由快照区和文件系统共享
u由于快照区与原本的LV共用很多PE的区块,因此快照与被快照的LV必须在同一个VG中.系统恢复的时候的文件数量不能高于快照区的实际容量
使用LVM快照
u为现有逻辑卷创建快照
lvcreate-l 64 -s -n data-snapshot -p r /dev/vg0/data
u挂载快照
mkdir-p /mnt/snap
mount -o ro/dev/vg0/data-snapshot /mnt/snap
u恢复快照
umount/dev/vg0/data-snapshot
umount/dev/vg0/data
lvconvert--merge /dev/vg0/data-snapshot
u删除快照
umount/mnt/databackup
lvremove/dev/vg0/databackup
LVM逻辑卷管理
新建LVM
创建PV物理卷
pvcreate /dev/md3 /dev/sdi(两块磁盘,MD3和SDI)
合并两个物理卷组
vgcreate -s 4M lvcentos /dev/md3 /dev/sdi
查看PV信息
[root@localhost app]# pvs
PV VG Fmt Attr PSize PFree
/dev/md3 lvcentos lvm2 a-- <1.99g 0 (名字是lvcentos)
/dev/sdi lvcentos lvm2 a-- 1020.00m 0
详细查看PV
[root@localhost ~]# pvdisplay
--- Physical volume ---
PV Name /dev/md3
VG Name lvcentos
PV Size 1.99 GiB / not usable 4.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 509
Free PE 0
Allocated PE 509
PV UUID XERL0K-i9jK-K4bP-E1lG-gYHT-88O4-Xhdshv
--- Physical volume ---
PV Name /dev/sdi
VG Name lvcentos
PV Size 1.00 GiB / not usable 4.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 255
Free PE 0
Allocated PE 255
PV UUID jtchzB-lsWy-5ZBE-Hch6-Ldi1-kGq2-2IIJcW
详细查看VG
[root@localhost ~]# vgdisplay
--- Volume group ---
VG Name lvcentos
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 0
Max PV 0
Cur PV 2
Act PV 2
VG Size 2.98 GiB
PE Size 4.00 MiB
Total PE 764
Alloc PE / Size 764 / 2.98 GiB
Free PE / Size 0 / 0
VG UUID s0vCZc-CVAV-QiLO-Vrcl-ETS5-ZXbm-qDFREN
创建名为gaoqian的LV
lvcreate -n gaoqian -l 4 lvcentos (-l小写意思是按PE块大小分,当前是4M分4个,-L 16M是大概分不精确)
添加LV
通过查看VG看到PE剩余760,决定全部分出去。
[root@localhost app]# vgdisplay
--- Volume group ---
VG Name lvcentos
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 2
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 0
Max PV 0
Cur PV 2
Act PV 2
VG Size 2.98 GiB
PE Size 4.00 MiB
Total PE 764
Alloc PE / Size 4 / 16.00 MiB
Free PE / Size 760 / <2.97 GiB
VG UUID s0vCZc-CVAV-QiLO-Vrcl-ETS5-ZXbm-qDFREN
把剩余的PE空间全部分给LV
lvcreate -n gaoqianqian -l 100%FREE lvcentos
查看两个LV分区的情况,都是软链接。
[root@localhost ~]# ll /dev/lvcentos/gaoqian
lrwxrwxrwx. 1 root root 7 Jun 9 08:42 /dev/lvcentos/gaoqian -> ../dm-0
[root@localhost ~]# ll /dev/lvcentos/gaoqianqian
lrwxrwxrwx. 1 root root 7 Jun 9 19:57 /dev/lvcentos/gaoqianqian -> ../dm-1
格式化两个创建的LV,创建文件系统。
mkfs.xfs /dev/lvcentos/gaoqian
mkfs.xfs /dev/lvcentos/gaoqianqian
通过blkid可以看到创建成功了
/dev/mapper/lvcentos-gaoqian: UUID="b9c0f16e-32ef-4c7c-965d-4dfa0d350e78" TYPE="xfs"
/dev/mapper/lvcentos-gaoqianqian: UUID="249756ea-0266-448c-a398-6a9eecd2df3b" TYPE="xfs"
有文件系统就可以挂载了
vim /etc/fstab
UUID=b9c0f16e-32ef-4c7c-965d-4dfa0d350e78 /mnt/lvcentos/gaoqian xfs defaults 0 0
UUID=249756ea-0266-448c-a398-6a9eecd2df3b /mnt/lvcentos/gaoqianqian xfs defaults 0 0
创建目录
[root@localhost mnt]# mkdir /mnt/lvcentos
[root@localhost mnt]# mkdir /mnt/lvcentos/gaoqian /mnt/lvcentos/gaoqianqian
mount-a 更新挂载表
无提示说明脚本执行成功没有报错
df -h 查看分区表
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 20G 4.0G 16G 20% /
devtmpfs 706M 0 706M 0% /dev
tmpfs 722M 0 722M 0% /dev/shm
tmpfs 722M 11M 711M 2% /run
tmpfs 722M 0 722M 0% /sys/fs/cgroup
/dev/sda5 10G 33M 10G 1% /app
/dev/sr0 8.8G 8.8G 0 100% /media
/dev/sdb2 2.0G 33M 2.0G 2% /app/date2
/dev/sdb1 3.0G 33M 3.0G 2% /app/date1
/dev/sda1 297M 138M 160M 47% /boot
tmpfs 145M 12K 145M 1% /run/user/42
tmpfs 145M 0 145M 0% /run/user/0
/dev/mapper/lvcentos-gaoqian 14M 896K 13M 7% /mnt/lvcentos/gaoqian
/dev/mapper/lvcentos-gaoqianqian 3.0G 33M 3.0G 2% /mnt/lvcentos/gaoqianqian
PV耗尽添加硬盘
模拟PV耗尽再次添加硬盘
不用重启机器,直接添加就可以,然后执行扫描
echo '- - -' > /sys/class/scsi_host/host2/scan
执行lsblk查看物理硬盘是否添加
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdj 8:144 0 1G 0 disk
添加硬盘前先查看PVS状态
[root@localhost ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/md3 lvcentos lvm2 a-- <1.99g 0
/dev/sdi lvcentos lvm2 a-- 1020.00m 0
直接添加整块磁盘
[root@localhost ~]# pvcreate /dev/sdj
Physical volume "/dev/sdj" successfully created.(直接提示成功)
再次查看PV
[root@localhost ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/md3 lvcentos lvm2 a-- <1.99g 0
/dev/sdi lvcentos lvm2 a-- 1020.00m 0
/dev/sdj lvm2 --- 1.00g 1.00g (看到/DEV/SDJ已经添加进来,但VG名还是空白)
添加PV磁盘到VG
[root@localhost ~]# vgextend lvcentos /dev/sdj (由于已经存在VG,所以用vgextend命令跟上原来的VG名就可以,不要用vgcreate)
Volume group "lvcentos" successfully extended (提示成功)
查看PV
[root@localhost ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/md3 lvcentos lvm2 a-- <1.99g 0
/dev/sdi lvcentos lvm2 a-- 1020.00m 0
/dev/sdj lvcentos lvm2 a-- 1020.00m 1020.00m (/DEV/SDJ已经加入到VG组中)
详细查看PV
[root@localhost ~]# vgdisplay
--- Volume group ---
VG Name lvcentos
System ID
Format lvm2
Metadata Areas 3
Metadata Sequence No 4
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 3
Act PV 3
VG Size 3.98 GiB
PE Size 4.00 MiB
Total PE 1019
Alloc PE / Size 764 / 2.98 GiB
Free PE / Size 255 / 1020.00 MiB (可以看到可用空间为1020M)
VG UUID s0vCZc-CVAV-QiLO-Vrcl-ETS5-ZXbm-qDFREN
查看VG
[root@localhost ~]# vgs
VG #PV #LV #SN Attr VSize VFree
lvcentos 3 2 0 wz--n- 3.98g 1020.00m (也可以看到FREE为1020M)
查看磁盘状态
df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/lvcentos-gaoqian 14M 896K 13M 7% /mnt/lvcentos/gaoqian (可以看到逻辑卷只有13M,需要添加)
添加VG逻辑卷组
[root@localhost ~]# lvextend -l +254 /dev/lvcentos/gaoqian (添加VG逻辑卷组的空间到gaoqian去)
Size of logical volume lvcentos/gaoqian changed from 16.00 MiB (4 extents) to <1.01 GiB (258 extents).
Logical volume lvcentos/gaoqian successfully resized. (提示成功)
查看LV
[root@localhost ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
gaoqian lvcentos -wi-ao---- <1.01g (已经看到gaoqian从之前的13M变成1.01g)
详细查看VG
[root@localhost ~]# vgdisplay
--- Volume group ---
VG Name lvcentos
System ID
Format lvm2
Metadata Areas 3
Metadata Sequence No 5
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 3
Act PV 3
VG Size 3.98 GiB
PE Size 4.00 MiB
Total PE 1019
Alloc PE / Size 1018 / <3.98 GiB
Free PE / Size 1 / 4.00 MiB (查看剩余空间从之前255变成1)
VG UUID s0vCZc-CVAV-QiLO-Vrcl-ETS5-ZXbm-qDFREN
查看磁盘状态
[root@localhost ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda2 xfs 20G 4.0G 16G 20% /
devtmpfs devtmpfs 706M 0 706M 0% /dev
tmpfs tmpfs 722M 0 722M 0% /dev/shm
tmpfs tmpfs 722M 11M 711M 2% /run
tmpfs tmpfs 722M 0 722M 0% /sys/fs/cgroup
/dev/sr0 iso9660 8.8G 8.8G 0 100% /media
/dev/sda5 xfs 10G 33M 10G 1% /app
/dev/sdb2 xfs 2.0G 33M 2.0G 2% /app/date2
/dev/sdb1 xfs 3.0G 33M 3.0G 2% /app/date1
/dev/mapper/lvcentos-gaoqian xfs 14M 896K 13M 7% /mnt/lvcentos/gaoqian (发现此处仍为14M,文件系统问题)
/dev/mapper/lvcentos-gaoqianqian xfs 3.0G 33M 3.0G 2% /mnt/lvcentos/gaoqianqian
/dev/sda1 xfs 297M 138M 160M 47% /boot
tmpfs tmpfs 145M 12K 145M 1% /run/user/42
tmpfs tmpfs 145M 0 145M 0% /run/user/0
检查磁盘文件系统
XFS文件系统使用此命令
xfs_growfs /dev/mapper/lvcentos-gaoqian
EXT4文件系统使用此命令
resize2fs /dev/lvcentos/gaoqian
两种文件系统都能用
lvextend -r -l +100%FREE /dev/sdj (待验证)
再次查看磁盘状态
[root@localhost ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda2 xfs 20G 4.0G 16G 20% /
devtmpfs devtmpfs 706M 0 706M 0% /dev
tmpfs tmpfs 722M 0 722M 0% /dev/shm
tmpfs tmpfs 722M 11M 711M 2% /run
tmpfs tmpfs 722M 0 722M 0% /sys/fs/cgroup
/dev/sr0 iso9660 8.8G 8.8G 0 100% /media
/dev/sda5 xfs 10G 33M 10G 1% /app
/dev/sdb2 xfs 2.0G 33M 2.0G 2% /app/date2
/dev/sdb1 xfs 3.0G 33M 3.0G 2% /app/date1
/dev/mapper/lvcentos-gaoqian xfs 1.1G 2.9M 1.1G 1% /mnt/lvcentos/gaoqian (已经扩容成功)
/dev/mapper/lvcentos-gaoqianqian xfs 3.0G 33M 3.0G 2% /mnt/lvcentos/gaoqianqian
/dev/sda1 xfs 297M 138M 160M 47% /boot
tmpfs tmpfs 145M 12K 145M 1% /run/user/42
tmpfs tmpfs 145M 0 145M 0% /run/user/0
更换硬盘实验
查看硬盘可用空间
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 120G 0 disk
├─sda1 8:1 0 300M 0 part /boot
├─sda2 8:2 0 20G 0 part /
├─sda3 8:3 0 4G 0 part [SWAP]
├─sda4 8:4 0 1K 0 part
└─sda5 8:5 0 10G 0 part /app
sdb 8:16 0 100G 0 disk (看到/dev/sdb可用空间较多可以从这取用)
├─sdb1 8:17 0 3G 0 part /app/date1
└─sdb2 8:18 0 2G 0 part /app/date2
sdc 8:32 0 80G 0 disk
sdd 8:48 0 60G 0 disk
sde 8:64 0 1G 0 disk
└─md1 9:1 0 1022M 0 raid1
└─md3 9:3 0 2G 0 raid0
├─lvcentos-gaoqian 253:0 0 1G 0 lvm /mnt/lvcentos/gaoqian
└─lvcentos-gaoqianqian 253:1 0 3G 0 lvm /mnt/lvcentos/gaoqianqian
sdf 8:80 0 1G 0 disk
└─md1 9:1 0 1022M 0 raid1
└─md3 9:3 0 2G 0 raid0
├─lvcentos-gaoqian 253:0 0 1G 0 lvm /mnt/lvcentos/gaoqian
└─lvcentos-gaoqianqian 253:1 0 3G 0 lvm /mnt/lvcentos/gaoqianqian
sdg 8:96 0 1G 0 disk
└─md2 9:2 0 1022M 0 raid1
└─md3 9:3 0 2G 0 raid0
├─lvcentos-gaoqian 253:0 0 1G 0 lvm /mnt/lvcentos/gaoqian
└─lvcentos-gaoqianqian 253:1 0 3G 0 lvm /mnt/lvcentos/gaoqianqian
sdh 8:112 0 1G 0 disk
└─md2 9:2 0 1022M 0 raid1
└─md3 9:3 0 2G 0 raid0
├─lvcentos-gaoqian 253:0 0 1G 0 lvm /mnt/lvcentos/gaoqian
└─lvcentos-gaoqianqian 253:1 0 3G 0 lvm /mnt/lvcentos/gaoqianqian
sdi 8:128 0 1G 0 disk
└─lvcentos-gaoqianqian 253:1 0 3G 0 lvm /mnt/lvcentos/gaoqianqian
sdj 8:144 0 1G 0 disk
└─lvcentos-gaoqian 253:0 0 1G 0 lvm /mnt/lvcentos/gaoqian
sdk 8:160 0 1G 0 disk (也可以直接添加新硬盘)
sr0 11:0 1 8.8G 0 rom /media
从/dev/sdb 中划分新分区
[root@localhost ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): n (new新的)
Partition type: (直接回车)
p primary (2 primary, 0 extended, 2 free)
e extended
Select (default p): p (主分区)
Partition number (3,4, default 3): (硬盘号默认就可以)
First sector (10487808-209715199, default 10487808): (分区开始的块,默认就可以)
Using default value 10487808
Last sector, +sectors or +size{K,M,G} (10487808-209715199, default 209715199): +5G (添加5G空间)
Partition 3 of type Linux and of size 5 GiB is set
Command (m for help): t
Partition number (1-3, default 3): 3
Hex code (type L to list all codes): 8e
Changed type of partition 'Linux' to 'Linux LVM'
Command (m for help): w (存盘保存退出)
The partition table has been altered!
同步磁盘文件系统
[root@localhost ~]# xfs_growfs /dev/sdb3
xfs_growfs: /dev/sdb3 is not a mounted XFS filesystem
再次查看物理分区
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 120G 0 disk
├─sda1 8:1 0 300M 0 part /boot
├─sda2 8:2 0 20G 0 part /
├─sda3 8:3 0 4G 0 part [SWAP]
├─sda4 8:4 0 1K 0 part
└─sda5 8:5 0 10G 0 part /app
sdb 8:16 0 100G 0 disk
├─sdb1 8:17 0 3G 0 part /app/date1
├─sdb2 8:18 0 2G 0 part /app/date2
└─sdb3 8:19 0 5G 0 part (已经发现了新创建的SDB3)
要把磁盘添加到PV中
[root@localhost ~]# pvcreate /dev/sdb3
Physical volume "/dev/sdb3" successfully created.
把逻辑卷PV添加到逻辑卷组VG中
[root@localhost ~]# vgextend lvcentos /dev/sdb3
Volume group "lvcentos" successfully extended
详细查看VG
[root@localhost ~]# vgdisplay
--- Volume group ---
VG Name lvcentos
System ID
Format lvm2
Metadata Areas 4
Metadata Sequence No 6
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 4
Act PV 4
VG Size <8.98 GiB
PE Size 4.00 MiB
Total PE 2298
Alloc PE / Size 1018 / <3.98 GiB
Free PE / Size 1280 / 5.00 GiB (剩余空间很多)
VG UUID s0vCZc-CVAV-QiLO-Vrcl-ETS5-ZXbm-qDFREN
查看PV
[root@localhost ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/md3 lvcentos lvm2 a-- <1.99g 0
/dev/sdb3 lvcentos lvm2 a-- <5.00g <5.00g
/dev/sdi lvcentos lvm2 a-- 1020.00m 0
/dev/sdj lvcentos lvm2 a-- 1020.00m 4.00m
详细查看PV
[root@localhost ~]# pvdisplay
--- Physical volume ---
PV Name /dev/md3
VG Name lvcentos
PV Size 1.99 GiB / not usable 4.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 509
Free PE 0
Allocated PE 509
PV UUID XERL0K-i9jK-K4bP-E1lG-gYHT-88O4-Xhdshv
--- Physical volume ---
PV Name /dev/sdi
VG Name lvcentos
PV Size 1.00 GiB / not usable 4.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 255
Free PE 0
Allocated PE 255
PV UUID jtchzB-lsWy-5ZBE-Hch6-Ldi1-kGq2-2IIJcW
--- Physical volume ---
PV Name /dev/sdj
VG Name lvcentos
PV Size 1.00 GiB / not usable 4.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 255
Free PE 1
Allocated PE 254
PV UUID xK8Bup-9Gay-d0Sj-ePCW-BSLi-89P2-1lIcBE
--- Physical volume ---
PV Name /dev/sdb3
VG Name lvcentos
PV Size 5.00 GiB / not usable 4.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 1279
Free PE 1279 (其它三个盘都是满的,剩余空间为0,所以系统会把自动迁移到此盘中)
Allocated PE 0
PV UUID s8AEjT-sfFq-YEbd-5zdy-WDgI-OHY2-P4UpTv
迁移数据
[root@localhost ~]# pvmove /dev/sdj
/dev/sdj: Moved: 3.54%
/dev/sdj: Moved: 85.83%
/dev/sdj: Moved: 100.00%
[root@localhost ~]# (直到下一个命令行显示,才算是真的结束,迁移sdj上的数据到新的sdb3中)
再次详细查看PV
[root@localhost ~]# pvdisplay
--- Physical volume ---
PV Name /dev/sdj
VG Name lvcentos
PV Size 1.00 GiB / not usable 4.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 255
Free PE 255 (此时硬盘数据已经迁移成功,占用为0,FREE为100%)
Allocated PE 0
PV UUID xK8Bup-9Gay-d0Sj-ePCW-BSLi-89P2-1lIcBE
--- Physical volume ---
PV Name /dev/sdb3
VG Name lvcentos
PV Size 5.00 GiB / not usable 4.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 1279
Free PE 1025 (有数据状态,FREE不是满的。)
Allocated PE 254
PV UUID s8AEjT-sfFq-YEbd-5zdy-WDgI-OHY2-P4UpTv
把硬盘从VG中移除
[root@localhost ~]# vgreduce lvcentos /dev/sdj
Removed "/dev/sdj" from volume group "lvcentos"
查看PV
[root@localhost ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/md3 lvcentos lvm2 a-- <1.99g 0
/dev/sdb3 lvcentos lvm2 a-- <5.00g 4.00g
/dev/sdi lvcentos lvm2 a-- 1020.00m 0
/dev/sdj lvm2 --- 1.00g 1.00g (可以看到sdj已经不属于lvcentos了)
把硬盘从PV中移除
[root@localhost ~]# pvremove /dev/sdj
Labels on physical volume "/dev/sdj" successfully wiped.
查看分区
[root@localhost ~]# lsblk
sdj 8:144 0 1G 0 disk (已经变成普通硬盘,可以进行更换操作)