不知道大家想过这么一个问题没有,如果一个文件大小是持续增长的,我们把它放到一块分区上,但是有一天这个分区突然不能容下这个文件了,我们又不想再把这个文件复制到更大的分区上,那么我们如何能在不损坏原文件的基础上把分区扩大以容下不断增长的文件呢?这里我们就要引用逻辑卷的概念lvm.
什么是逻辑卷?
我们把多快硬盘组织为一个逻辑设备,在其中动态新建一个逻辑分区,那么我们就把硬盘部分简单的称为物理卷,把逻辑设备称为卷组,而把逻辑分区称为逻辑卷,如图:
这里我们就要引入物理边界和逻辑边界的定义。我们把硬件设备的大小定义为物理边界,而把其中逻辑分区的大小定义为逻辑边界。这里我们要注意,逻辑边界的大小取决于物理边界的大小,不能超越。我们在使用过程中就可以根据自己的
需要来自行扩展和缩减逻辑卷了。
卷管理
根据不同的卷我们可以进行管理,如管理pv的pvreate,pvremove,pvs,pvdisplay,pvscan,pvmove等,vg和lv的命令格式和pv相同就不在说了,下面我们来讲一下其使用格式:
pvreate name 设备路径
-s 数字:指定pe
例:创建一个pe大小为8m的pv. Pvreate mypv /dev/sda5 –s 8m
Vgreate name pv-name
lvreate -n name -L 数字 vgname 必须用-n指定名字,用-L指定大小。
扩展逻辑卷
在linux中,我们可以用lvextend命令来实现扩展物理边界,格式如下:
Lvextend -L [+]数字 lv路径 其中前边加+则表示增加n,直接加数字则表示增加到n.
例:扩展mylv加3g。 lvextend –L +3g /dev/myvg/mylv
使用resize2fs来实现扩展逻辑边界。
Resize2fs lv路径 数字
-p:扩展逻辑边界和物理边界一样大。
扩展逻辑卷风险较小,可放心使用。
缩减逻辑卷
其顺序如下:
1、缩减逻辑卷
resize2fs 逻辑卷路径 数字
例:把mylv缩减为3g. resizefs /dev/myvg/mylv 3g
2、缩减物理卷
Lvreduce –L (-)数字 逻辑卷路径
注意:1、不能在线缩减,得先卸载;
2、确保缩减后的空间大小依然能存储原有的所有数据;
3、在缩减之前应该先强行检查文件,以确保文件系统处于一至性状态。
快照卷
lvm还支持快照功能,快照就是保存文件修改后的属性,有速度快等优势,是一个相当好用的功能。应注意:
1、生命周期为整个数据时长;在这段时长内,数据的增长量不能超出快照卷大小;
2、快照卷应该是只读的;
3、跟原卷在同一卷组内。
使用格式如下:
Lvreate 选项 路径
–s:指定为快照卷
-p r|w:指定权限
-L 数字:指定大小
例:为mylv创建大小为512m的只读快照。 Lvreate –s –p r –L 512m /dev/myvg/mylv.
Lvm属于内核上dm模块的功能,它的应用帮助我们方便的解决了很多问题,我们本次就介绍到这里,你学会了吗?