一.简介

    LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区 进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。
LVM最大的特点就是可以对磁盘进行动态管理。使用了LVM管理分区,动态的调整分区的 大小,标准分区是做不到的!

二.LVM包含的组件

    PV(Physical Volume) 物理卷 

物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的分区,也可以是整个物理硬盘,也可以是raid设备。

   VG(Volume Group)    卷组

    卷组建立在物理卷之上,一个卷组中至少要包括一个物理卷,在卷组建立之后可动态添 加物理卷到卷组中。

     一个逻辑卷管理系统工程中可以只有一个卷组,也可以拥有多个卷组。 
   LV(Logical Volume) 逻辑卷

   逻辑卷建立在卷组之上,卷组中的未分配空间可以用于建立新的逻辑卷,逻辑卷建立后 可以动态地扩展和缩小空间。
   系统中的多个逻辑卷可以属于同一个卷组,也可以属于不同的多个卷组。
   PE(Physical Extent) 物理块

   PE是整个LVM 最小的储存区块,默认每个PE区块是4MB大小,也就是说,其实我们的数 据都是由写入PE 来处理的。简单的说,这个PE 就有点像文件系统里面的block 大小。
三.建立 LVM 的步骤: 

要有新的物理盘或者分区
把物理分区/或整个磁盘建立成为物理卷(PV)
把物理卷整合成为卷组(VG)。卷组就已经可以动态的调整大小了,可以把 物理卷PV加入卷组,实现扩容
把卷组再划分成为逻辑卷(LV),当然逻辑卷也是可以直接调整大小的。 对于上层应用或者用户来说逻辑卷就是分区,所以也需要格式化和挂载。
创建简化: 分区 创建pv 创建vg 创建lv 格式化 挂载
删除简化: 卸载 删除lv 删除vg 删除pv
创建PV #pvcreate 
例:pvcreate /dev/sdb1
删除PV #pvremove
例:pvremove /dev/sdb1
pvdisplay #查看pv

  

 

创建VG #vgcreate
例: vgcreate vg1 /dev/sdb1
删除VG vgremove vg1 /dev/sdb1
例:vgremove 
vgdisplay #查看vg
常用选项:
-s PE 大小:指定 PE 的大小,单位可以是 MB,GB,TB 等。如果不写默认 PE 大小事 4MB,一般不改
vgdisplay #查看VG

  

 

创建LV #lvcreate
例:lvcreate -L 5G -n lv1 vg1 #创建一个5G的lv1 
删除LV #lvremove
例:lvremove -L 5G -n lv1 vg1
常用选项:
-L 容量:指定逻辑卷大小,单位 MB,GB,TB 等
-l 个数:按照 PE 个数指定逻辑卷大小
-n 逻辑卷名:指定逻辑卷名

  

lvs 格式化LV mkfs.xfs /dev/vg0/lv1 
挂载 mkdir /mnt/lv1
mount /dev/vg0/lv1 /mnt/lv1/

  

四.LVM的扩容

LVM最大的好处就是可以对磁盘进行动态管理,而且不会丢失现有的数据。 如果lv1的使用量达到了80%,需要扩容,那么 VG的先扩容
增加PV,然后将新的PV添加到VG中
   VG的扩容 vgextend vg1 /dev/sdc1 卷组vg1扩大
   LV的扩容
   查看vg1 的剩余容量,决定好扩容多少 对lv1进行扩容。
    # lvextend -L +1G /dev/vg1/lv1 有+:原有的基础质上增加1G
   # lvextend -L 30G /dev/vg1/lv1 没有+:容量改变到30G 
五.LVM的缩小
    命令: vgreduce lvreduce
注意:我们一般情况下,都是对磁盘进行扩容,缩减没的什么实际意义.