逻辑卷管理(LVM)
通过整个磁盘和多个分区作为物理卷(pv),将其组成一个物理卷组(vg),通过卷组来弹性分配大小的磁盘就是逻辑卷(lv)。下图就是逻辑卷的创建过程,所以逻辑卷的创建主要分为三部分。
一、物理卷的选择
物理卷可以是整个磁盘也可是磁盘的一个分区,通过”pvcreate”来创建,如果是分区的话,在创建分区时要指定分区类型为’Linux LVM’。可以通过’pvs’来粗略查看pv。
图中是我创建的两个物理卷,其中sdb1是一个分区而sdc是一整个磁盘,创建完成后通过’pvs’来查看。
二、卷组的创建
我们将创建好的pv组成一个卷组以便以后逻辑卷使用,通过”vgcreate”来创建,创建时我们要跟上’-s size’来指定PE size的大小。
通过”vgdispaly”我们看到了pe的大小就是我们设置的8M,还可以看到vg的UUID、总容量等等信息。
三、逻辑卷的建立
在vg0的基础上我们通过”lvcreate”来创立逻辑卷,逻辑卷的总大小不可超过vg的大小。
“lvcreate”命令中’-l’是指定创建lv大小的单位为”pe size” ‘-L’是自己指定单位。
创建好逻辑卷后即可创建需要的文件系统。然后挂载到目录下就可以使用了。
扩展、缩小逻辑卷
在对逻辑卷进行设置前要先取消挂载。增加逻辑卷的大小通过”lvextend -L “来指定大小,缩减逻辑卷的大小则是通过”lvreduce -L”,-L后跟的大小不是增加或缩小的大小而是总容量。以扩展逻辑卷为例
首先通过”lvdisplay”来查看lv1的大小为20G
然后通过”lvextend -L 30G /dev/vg0/lv1″扩展lv1的大小
然后查看
我们发现lv1的大小从20G扩展到了30G而不是增加了30G。
删除物理卷
再删除底层PV前我们先要确保vg中的可用空间要大于我们要删除的pv大小。通过”pvmove /dev/sdb1″来搬出sdb1的容量,在”vgreduce vg0 /dev/sdb1″来减出vg中sdb1的空间,最后”pvremove /dev/sdb1″来删除pv。
此时我们查看vg的大小也少去了sdb1的大小。
逻辑卷迁移
如果我们要将逻辑卷迁移到其他主机,首先要取消与当前主机的挂载关系,然后为了避免与新主机的冲突,要将lv与vg都改名为目标主机中不存在的名字。通过”lvrename””vgrename”来进行改名。
这是我们把原来的vg0和lv1改成了vg000he lv111。接着我们要禁用设备并导出。
接着将设备在旧主机上拔出,接入新主机。查看新主机中没有同名设备后,导入vg000(“vgimport vg000”),启用设备后(“vgchange -ay /dev/vg000/lv111”),挂在到新主机的目录下即可使用。
逻辑卷快照的原理及使用
逻辑卷快照的原理是通过命令对逻辑卷中的内容创建一个逻辑卷快照,此时无论我们修改或删除逻辑卷的内容,快照里面都是被修改内容刚刚创建的状态。当我们通过快照还原逻辑卷时,逻辑卷就会还原到快照创建时的样子,还原后快照也会被删除。
通过”lvcreate -n lv0-snapshot -p r -L 1G -s /dev/vg000/lv0″来创建关于逻辑卷’lv0’的快照,将其挂载到目录后我们可以看到创建快照时’lv0’中的内容,若要还原逻辑卷,首先要将逻辑卷和逻辑卷快照取消挂载,然后通过”lvconvert — merge /dev/vg000/lv0-snapshot”即可还原数据。
本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/89683