LVM logical volume manager
1、整合闲置磁盘空间
2、动态调整分区大小
LVM1 LVM2
相关名词
- PE physical extend 物理块 PE=4M LVM1=65536x4M=256G LVM基本存储单元
- PV physical volume 物理卷 LVM的成员
- VG volume group 卷组 由多个物理卷组成,用来划分的存储空间
- LV logical volume 逻辑卷
LVM制作过程
准备工作
修改磁盘分区id为8e
yum install lvm2
创建PV
pvcreate /dev/sd{b,c,d,e}1
pvcreate /dev/sdb
pvcreate /dev/vdb
扫描
pvscan
查看pv
pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 centos lvm2 a-- <49.51g 0
/dev/sdb centos lvm2 a-- <100.00g 20.00m
pvs
PV VG Fmt Attr PSize PFree
/dev/vdb vg lvm2 a-- <100.00g 96.00m
查看物理卷信息
pvdisplay /dev/sdb2
删除
pvremove /dev/sd{b,c,d,e}1
创建VG
vgcreate -s 16M(或G,T) 卷组名 /dev/sd{b,c,d,e}1
vgcreate vg1000 /dev/sdb1 /dev/sdb2
vgcreate vg /dev/sd{b,c,d,e}1
vgcreate vg /dev/vdb
vgcreate gluster /dev/sdb
vgscan
查看vg
vgs
VG #PV #LV #SN Attr VSize VFree
centos 2 2 0 wz--n- 149.50g 20.00m
vgs
VG #PV #LV #SN Attr VSize VFree
vg 1 1 0 wz--n- <100.00g 96.00m
vgdisplay 卷组名
放大
vgextend
缩小
vgreduce
改变卷组状态
vgchange
删除
vgremove 卷组名
创建LV
lvcreate [-L 指定容量(m,g,t)] -l PE数量 -n 逻辑卷名称 逻辑卷组名
lvcreate -L 450G -n /dev/vg_yqxt/lv_opt vg_yqxt
lvcreate -L 510G -n /dev/vg_yqxt/lv_db vg_yqxt
lvcreate -L 3.9G -n /dev/vg/lv1 vg
lvcreate -L 102300m -n /dev/vg/lv1 vg
lvcreate -l +100%FREE -n /dev/gluster/gfs1 gluster
lvscan
查看lv
lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root centos -wi-ao---- 141.48g
swap centos -wi-ao---- 8.00g
lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
lv1 vg -wi-ao---- 99.90g
lvdisplay /dev/卷组名/卷名
lvextend
lvreduce
lvremove /dev/卷组/逻辑卷
lvresize 重定义大小
lvresize -L 1000M /dev/vg/lv1 //逻辑卷大小设置为1000M
做文件系统
mkfs.ext3 /dev/卷组/逻辑卷
mkfs.ext4 /dev/vg/lv1
挂载
mount /dev/vg/lv1 /test/
放大LV
先放大卷组再放大逻辑卷
1、创建pv
pvcreate /dev/sdb
查看pv
pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 centos lvm2 a-- <49.51g 0
/dev/sdb centos lvm2 a-- <100.00g 20.00m
查看卷组
vgs
VG #PV #LV #SN Attr VSize VFree
centos 2 2 0 wz--n- 149.50g 20.00m
2、放大卷组
vgextend 卷组 /dev/sdf1
vgextend vg /dev/sdf1
vgextend centos /dev/sdb
3、放大卷
查看lv
lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root centos -wi-ao---- 141.48g
swap centos -wi-ao---- 8.00g
lvextend -L 大小 /dev/卷组/逻辑卷
lvextend -L +500M /dev/vg/lv1 //逻辑卷lv1增加500M
lvextend -L +520M /dev/vg/lv2
lvextend -L +99G /dev/centos/root
lvextend -L +1000M /dev/centos/root
lvextend -l +100%FREE /dev/mapper/centos-root
4、重新定义分区大小(告诉操作系统)
resize2fs /dev/卷组/卷
#ext2,ext3,ext4文件系统
resize2fs /dev/vg/lv1
resize2fs /dev/vg/lv2
#xfs文件系统
xfs_growfs /dev/vg/lv2
xfs_growfs /dev/centos/root
xfs_growfs /dev/mapper/centos-root
#创建pv
pvcreate /dev/sdc
#放大vg
vgextend centos7_vGroup002 /dev/sdc
#放大lv
lvextend -l +100%FREE /dev/mapper/centos7_vGroup002-lv_data
#重新定义分区大小(告诉操作系统)
xfs_growfs /dev/mapper/centos7_vGroup002-lv_data
缩小LV (缩小有风险,操作需谨慎)
先缩小逻辑卷在缩小卷组
XFS不支持缩容
ext4支持缩容
1、卸载
2、检查逻辑卷
e2fsck -f /dev/卷组/逻辑卷
3、重新定义分区大小:(缩小文件系统)
resize2fs /dev/卷组/逻辑卷 30000M
实例:
resize2fs /dev/vg_yqxt/lv_home 30000M
resize2fs /dev/vg/lv1 1000M // 设置文件系统大小为1000M
4、缩小逻辑卷(告诉逻辑卷组)
lvreduce -L -960G /dev/卷组/逻辑卷
实例:
lvreduce -L -960G /dev/vg_yqxt/lv_home
说明:960G+30000M=总的逻辑卷组大小
lvreduce -L -2.9G /dev/vg/lv1 //逻辑卷减少2.9G
lvresize -L 1000M /dev/vg/lv1 //逻辑卷大小设置为1000M
5、转移
pvmove /dev/sdb1 /dev/sde1
6、缩小卷组
vgreduce 卷组 /dev/sdb1
LVM快照
COW copy on write
创建快照
lvcreate -l 500 -s -n 快照名 /dev/卷组/逻辑卷
还原快照
1、挂载快照
2、cp 快照里面的内容
删除逻辑卷
1、卸载
umount所有LV
2、删除逻辑卷
lvremove /dev/卷组/逻辑卷
3、改变卷组状态
vgchange -an 卷组 #停止工作
4、删除卷组
vgremove 卷组
5、删除物理卷
pvremove /dev/sd{b,c,d,e,f}1