欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

Linux中LVM逻辑卷管理

程序员文章站 2022-06-01 10:34:17
逻辑卷管理器是Linux系统用于对硬盘分区进行管理的一种机制,理论性较强,其创建初衷是为了解决硬盘设备在创建分区后不易修改分区大小的缺陷. ......

一.简介

    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
注意:我们一般情况下,都是对磁盘进行扩容,缩减没的什么实际意义.