一、预备知识
LVM全称为Logical Volume Manager 逻辑卷管理器,LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上、文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性。其中
PV:Physical Volume 物理卷
VG:volume Group 卷组
LV:Logincal Volume 逻辑卷
我们要创建逻辑卷,首先要创建物理卷PV,之后创建卷组VG,最后才创建逻辑卷LV,下面是逻辑卷创建的详细过程:
首先通过fdisk –l 查看系统上所有硬盘和分区的使用情况
我们从空的硬盘sdb上创建两个分区sdb1 5G,sdb2 5G为接下来做LVM做准备,注意的是我们在创建分区是需要设定分区的类型Linux LVM的分区类型为8e,并且这些分区要被内核识别,通过cat /proc/partions进行查看,若没有显示,则需要让内核重新进行探测,对于RHEL5版本的通过命令partprobe DEVICE命令,对于RHEL6的通过patx –a DEVICE,若仍无法识别则需要重启
二、创建物理卷
将新创建的两个分区/dev/sdb1 /dev/sdb2创建成物理卷:所用的命令为pvcreate /dev/adb{1,2} 当然也可以分开进行设定
通过pvs 和pvdisplay可以查看物理卷的信息,后面也可以指定特定的物理磁盘,查看某一个物理卷的信息
三、创建卷组
物理卷pv创建好之后,才可以创建卷组,创建卷组则用命令vgcreate,并将刚才创建的两个物理卷加入该卷组,其中PE的默认大小为4MB,PE是卷组的最小存储单位,可以通过-s选项指定PE的大小,可以通过vgs或者vgdisplay来查看创建的卷组
四、创建逻辑卷
卷组VG创建好之后,才可以创建逻辑卷LV,逻辑卷的创建命令为lvcreate,创建好之后可以通过lvs或者lvdisplay开查看创建的逻辑卷,需要说明的是在创建lv的时候需要指定其大小,选项为-L,逻辑卷的名字选项-n,也可以指定PE的个数选项-l
五、创建文件系统
逻辑卷textlv创建好之后,就可以在上面创建文件系统,以ext3文件系统为例,应该注意的是逻辑卷的引用需要逻辑卷的设备文件,逻辑卷的设备文件有两种书写方式
/dev/VG_NAME/LV_NAME
/dev/mapper/VG_NAME-LV_NAME
以我们做的为例逻辑卷的设备文件为
/dev/myvg/textlv或者是/dev/mapper/myvg-textlv
六、挂载
将创建好的文件系统/dev/myvg/textlv挂载到/mnt上,若实现以后服务器重启自动挂载,需要将创建好的文件系统挂载到配置文件/etc/fstab里面
为了查看/etc/fstab/是否正确,可以先卸载逻辑卷textlv,然后使用mount –a是内核重新读取/etc/fstab,看是否能够自动挂载
七、如何扩大卷组
重新从第二个硬盘上创建一个分区sdb3,并将创建好的分区加入大已经存在的卷组myvg中
八、如何扩大逻辑卷
首先要确定扩展多大,并确定当前逻辑卷所在的卷组有足够的空闲空间可用,扩展时要先扩展物理边界,在扩张逻辑边界
九、如何缩减逻辑卷
确定要缩减为多大?至少能容纳原有的所有数据,逻辑卷缩减有风险,所以要卸载并强行检测文件系统
缩减逻辑卷空间的步骤如下:
1.先卸载逻辑卷/dev/myvg/textlv
2.然后通过e2fsck命令检测逻辑卷上空余的空间
3.使用resize2fs将文件系统减少到3G
4.再使用lvreduce命令将逻辑卷减少到3G
注意,文件系统大小和逻辑卷大小一定要保持一致才行,如果逻辑卷大于文件系统,由于部分区域未格式化成文件系统会造成空间的浪费,如果逻辑卷小于文件系统,那数据就出问题了
十、如何缩减卷组
首先要确定移除的物理卷,将此物理卷上的数据转移至其他的物理卷,然后从卷组中将此物理卷移除
如何创建快照卷
要创建快照要满足三个条件:
1.生命周期为整个数据时长,在这段时长内,数据的增长量不能超出快照卷大小
2.快照卷应该是只读的
3.跟原卷在同一个卷组内
在对快照进行归档压缩后可以对快照进行删除操作
十一、删除逻辑卷,卷组和物理卷
移除物理卷之后可以将这些分区转化成普通的分区,即系统ID为83
总结:LVM逻辑卷是Linux里面一个很棒的空间使用机制,因为分区在没有格式化的情况下是没有办法加大或者放小的。通过LVM可以将你的磁盘空间做到灵活自如。