一、预备知识

LVM全称为Logical Volume Manager 逻辑卷管理器,LVMLinux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上、文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性。其中

PVPhysical Volume 物理卷

VGvolume Group 卷组

LVLogincal Volume 逻辑卷

我们要创建逻辑卷,首先要创建物理卷PV,之后创建卷组VG,最后才创建逻辑卷LV,下面是逻辑卷创建的详细过程:


首先通过fdisk –l 查看系统上所有硬盘和分区的使用情况


我们从空的硬盘sdb上创建两个分区sdb1 5Gsdb2 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的默认大小为4MBPE是卷组的最小存储单位,可以通过-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可以将你的磁盘空间做到灵活自如。