LVM逻辑卷管理

1.LVM概念

LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。它由ibm公司提出,目的是:在原始设备不变的情况下,容量可以拉伸或者缩减。

有关LVM的几个名词:物理分区;物理卷(pv);物理扩展(pe);卷组(vg);逻辑卷(lv)

形象理解有关这几个名词,可以从橘子炸成果汁的过程来说明。

物理分区:橘子;
物理卷(pv):每个橘子炸成的汁;
物理扩展(pe):组成pv的元素;
卷组(vg):将每个橘子炸成的汁合在一个大杯子里;
逻辑卷(lv):从大杯子里倒出来的果汁

2.LVM的建立

步骤:

1)监控窗口

watch -n 1 “pvs;echo ========;vgs;echo ==========;lvs;df -h /weixindata”

2)创建物理分区,修改id为8e

fdisk /dev/vdb----->n +500M------>t 8e----->wq

LVM逻辑卷管理_第1张图片

3)创建物理卷

pvcreate /dev/vdb1

4)创建物理卷组vg0

vgcreate vg0 /dev/vdb1

5)创建逻辑卷lv0

lvcreate -L 100M -n lv0 vg0

6)格式化

mkfs.xfs /dev/vg0/lv0

7)挂载

mount /dev/vg0/lv0 /weixindata

LVM逻辑卷管理_第2张图片

3.LVM设备的拉伸和缩减

(1)xfs格式的拉伸

逻辑卷的拉伸

lvextend -L 400M /dev/vg0/lv0

文件系统的拉伸

xfs_growfs /dev/vg0/lv0

LVM逻辑卷管理_第3张图片

应用:当想要拉伸的大小在vg中不够时:

步骤:(1)添加分区,(2)改变id,(3)同步分区表,(4)创建pv,(5)扩展vg,(6)拉伸lv,(7)拉伸文件系统

	(1)fdisk /dev/vdb   ----->  n   +500M   
	(2)t    8e
	(3)partprobe
	(4)pvcreate /dev/vdb2
	(5)vgextend  vg0 /dev/vdb2
	(6)lvextend -L 800M /dev/vg0/lv0
	(7)xfs_growfs /dev/vg0/lv0

注意:xfs文件系统是不支持缩减的。

(2)ext文件系统的拉伸和缩减

umount /weixindata #卸载设备
mkfs.ext4 /dev/vg0/lv0 #格式化为ext4文件系统

注意:缩减不支持在线缩减,必须卸载之后再缩减。

a . 拉伸

逻辑卷的拉伸

lvextend -L 900M /dev/vg0/lv0

文件系统的拉伸

resize2fs /dev/vg0/lv0

LVM逻辑卷管理_第4张图片

b. 缩减

	#####扫描文件系统进行校验
	e2fsck -f /dev/vg0/lv0
	#####缩减文件系统到300M
	resize2fs /dev/vg0/lv0
	######缩减逻辑卷
	lvreduce -L 300M /dev/vg0/lv0

LVM逻辑卷管理_第5张图片

(3)物理卷的移除

当vdb2完全闲置的时候可以直接移除:

vgreduce vg0 /dev/vdb2

当vdb1上有数据时,还想要移除vdb1:

	####将vdb1上的数据移除到vdb2上面
	pvmove /dev/vdb1  /dev/vdb2
	####从vg0中移除vdb1
	vgreduce vg0 /dev/vdb1
	####删除vdb1设备
	pvremove   /dev/vdb1

4.LVM快照

创建LVM快照l名称为v0backup,大小为20M

lvcreate -L 20M -n lv0backup -s /dev/vg0/lv0

当挂载快照到目录时:读取的是母盘,写入的时候是往快照里面写,如果写入的大小大于20M,快照会损坏。

LVM逻辑卷管理_第6张图片

快照上的数据是可以恢复的。

LVM逻辑卷管理_第7张图片

测试快照的生命周期:

LVM逻辑卷管理_第8张图片

5.LVM设备的删除

	####逻辑卷的删除
	lvremove /dev/vg0/lv0
	#####卷组的删除
	vgremove vg0
	#####物理卷的删除
	pvremove /dev/vdb2

注意:(1)删除设备之前因该先取消挂载;
(2)当设备被误删除以后(比如先在fdisk /dev/vdb中删除vdb1),可以使用下面命令来删除错误的设备。

vgreduce --removemissing vg0

设备被误删后发生的错误信息,在监控窗口中,可以看到:

LVM逻辑卷管理_第9张图片

修复:

LVM逻辑卷管理_第10张图片

你可能感兴趣的:(linux)