linux 逻辑卷管理

lvm介绍:

    lvm:全称Logical Volume Manager,重点在于可以弹性调整filesystem 容量,并非在于数据安全

    lvm:整合多个分区或者磁盘为一个整体,让分区看起来想一个整体。

    lvm:设备名/dev/md-#,软链接设备名/dev/VG_name/LV_name 、/dev/mapper/VG_name/LV_name

   

下面由一张图说明lvm组成吧!

    65.png

 

 pv:physcal volume指磁盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,

            但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数 

 vg:Volume Group类似于非LVM系统中的物理磁盘,其由一个或多个物理卷PV组成。可以在卷组上创建一个或多个LV

    (逻辑卷)。每个卷组中的pe数量做多65534个pe,所以每个卷组默认最大容量4*65534/1024=256G,pe在创建卷组时

    可以指定其大小

 lv:logical volume相当于物理磁盘中的分区

 PE:pv卷的最基本单位,默认pe大小为4MB,pe大小可以


 简单说明lvm卷创建过程:

    1、将磁盘分区转换成8e(lvm卷磁盘类型)或直接用磁盘

    2、将多个8e类型的磁盘分区创建成物理卷pv

    3、将多个物理卷组成卷组

    4、在卷组上划分出逻辑卷

 创建逻辑卷前,先了解下一些命令工具

    pvs(pvsan):搜索系统中任何含有pv的磁盘

    pvcreate:创建物理卷

    pvdisplay:显示目前系统上的pv状态

    pvremove:将pv属性移除,移除前确保没加入任何vg

   创建pv:pvcreate /dev/sd{a1,a2,b1} /dev/sdb

   注意:当某个磁盘已经划分分区之后,在想创建pv,必须将剩余的空间划分成分区,将分区类型转换成8e

    

    vgs(vgsan):搜索系统中vg状态

    vgcreate:创建vg

    -s:指定pe大小

    vgdisplay:显示详细的vg状态

    vgextend:扩充vg容量,也就是在vg中添加pv

    vgreduce:从vg中移除pv

    vgchange:配置vg是否启动(active)

    vgremove:删除-个vg

   (1) 创建vg,指定PE大小为16M

    vgcreate -s 16M vg0 /dev/sd{a1,a2}

   (2)扩展卷组vg0

    vgextend vg0 /dev/sdb1

   (3)删除逻辑卷

    lvremove /dev/VG_NAME/LV_NAME

  

    

   lvscan(lvs):查看系统中的lv

   lvcreate:创建lv

    -L:以常用的M ,G等单位制定lv大小,+10G :从原有的大小增加10G 10G:从原有的大小扩展到10G

    -l:以PE块个数指定lv大小,在lvdisplay时出现LE选项实际指的就是PE块,只是改了名字

     -n:只定lv名称

   lvdisplay:显示lv详细信息

   lvextend:扩容lv

   lvreduce:在lv中减少容量

   lvremove:删除lv 

   lvresize:对lv容量大小进行调整

   (1)lv创建:

   lvcreate -L +10G -n lv0(逻辑卷名) vg0(卷组名)

   (2)扩展lv

    lvextend -L +5G lv0

    resize2fs /dev/vg0/lv0 :重新格式化lv0

 

   或者两步合并为一步

   lvextend -r -L +5G lv0

   将卷组剩余的全部空间扩展

   lvextend –r –l +100%FREE lv名

   (3) 缩减逻辑卷需要5步,注意顺序不要打乱,前提是lv中有空间去缩减

     1、取消挂载 umount /dev/vg0/lv0

     2e2fsck –f /dev/vg0/lv0

     3、缩减文件系统:

     resize2fs /dev/vg0/lv0 10G 缩减到10G

     4、缩减逻辑卷

     lvreduce –L 10G

      5、挂载

     mount /dev/vg0/lv0

      xfs文件系统逻辑卷只能扩展,不能缩减

    

   重设文件系统大小

    fsadm [options] resize device [new_size[BKMGTEP]]
    resize2fs [- f] [- F] [- M] [- P] [- p] device [new_size]


创建逻辑卷实例 

    一、创建一个至少有两个PV组成的大小为20G的名为vg0 的VG;要求PE大小为16MB, 而后在卷组中创建大小为5G的逻
     辑卷lv0;挂载至/users目录

    

     1、创建pv
     [root@centos7 ~]# pvcreate /dev/sd{b,d,e1}
      Physical volume "/dev/sdb" successfully created
      Physical volume "/dev/sdd" successfully created
      Physical volume "/dev/sde1" successfully created
    [root@centos7 ~]# pvs
      PV         VG   Fmt  Attr PSize  PFree 
      /dev/sdb        lvm2 ---  20.00g 20.00g
      /dev/sdd        lvm2 ---  20.00g 20.00g
      /dev/sde1       lvm2 ---   5.00g  5.00g
    [root@centos7 ~]# 
    
    
    2、创建卷组
     [root@centos7 ~]# vgcreate  -s 16MB vg0 /dev/sdb /dev/sde1 
      Volume group "vg0" successfully created
    [root@centos7 ~]# vgcreate -s 16MB  vg1 /dev/sdd 
      Volume group "vg1" successfully created
    [root@centos7 ~]#
    [root@centos7 ~]# vgs
      VG   #PV #LV #SN Attr   VSize  VFree 
      vg0    2   0   0 wz--n- 24.99g 24.99g
      vg1    1   0   0 wz--n- 20.00g 20.00g
    [root@centos7 ~]# 
    
    3、创建lv卷
      [root@centos7 ~]# lvcreate -L +5G -n lv0 vg0
      Logical volume "lv0" created.
    [root@centos7 ~]# 
    [root@centos7 ~]# lvs
      LV   VG   Attr       LSize Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
      lv0  vg0  -wi-a----- 5.00g                                                    
    [root@centos7 ~]#
    
    4格式化lv
    [root@centos7 ~]# mkfs.ext4 /dev/vg0/lv0 
    
    5挂载
    mount /dev/vg0/lv0 /users

  

逻辑卷快照 

    快照是特殊的逻辑卷,它是在生成快照时存在的逻辑卷的
    准确拷贝
     对于需要备份或者复制的现有数据集临时拷贝以及其它操
     作来说,快照是最合适的选择。
     快照只有在它们和原来的逻辑卷不同时才会消耗空间。
     在生成快照时会分配给它一定的空间,但只有在原来的逻辑卷或
     者快照有所改变才会使用这些空间
     当原来的逻辑卷中有所改变时,会将旧的数据复制到快照中。
     快照中只含有原来的逻辑卷中更改的数据或者自生成快照后的快
      照中更改的数据
     建立快照的卷大小只需要原始逻辑卷的15%~20%就够了。也可

       以使用 lvextend放大快照。

    快照就是将当时的系统信息记录下来,就好像照相一般,
    若将来有任何数据改动了,则原始数据会被移动到快照区
    ,没有改动的区域则由快照区和文件系统共享。

    

    由于快照区与原本的LV共用很多PE的区块,因此快照去与
    被快照的LV必须要要在同一个VG上!系统恢复的时候的文

    件数量不能高于快照区的实际容量。

  创建快照实例

    为现有逻辑卷创建快照

    #lvcreate – l 64 – s – n snap- data – p r /dev/vg0/data

            -s:指定创建的lv为快照

            -n:快照名称

            -p r:指定快照为只读的:最好指定

     挂载快照
    #mkdir – p /mnt/snap
    #mount – o ro /dev/vg0/snap- data /mnt/snap
     删除快照
    #umount /mnt/databackup
    #lvremove /dev/vg0/databackup

原创文章,作者:wangnannan,如若转载,请注明出处:http://www.178linux.com/41835

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-02 11:04

    文章内容完整,思路清晰,理论和实践相结合,具有很强的操作性,整体下来读者能学到很多知识。