一.LVM(LogicalVolume Manager)逻辑卷管理

    是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。通过LVM系统管理员可以轻松管理磁盘分区,如:将若干个磁盘分区连接为一个整块的卷组(Volume group),形成一个存储池。管理员可以在卷组上随意创建逻辑卷组(logicalvolumes),并进一步在逻辑卷组上创建文件系统。管理员通过LVM可以方便的调整存储卷组的大小,并且可以对磁盘存储按照组的方式进行命名,管理和分配,例如按照使用用途进行定义,而不是使用物理磁盘名“sda”和“sdb”。而且当系统添加了新的磁盘,通过LVM就不必将磁盘的文件移动到新的磁盘上以充分利用新的存储空间,而是直接扩展文件系统跨越磁盘即可。

   

二.LVM中相关概念:

     1.物理存储介质:

     是指系统的物理存储设备:磁盘,是存储系统最底层的存储单元。如:/dev/sda /dev/hda   等。

     2.物理卷(Physical Volume,PV)

     是LVM最底层的的元素。指磁盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID), 是LVM的基本存储逻辑块,但和基本的物理存储介质比较,它包含了有与LVM相关的管理参数。

     3.卷组(Volume Group,VG)

      类似于非LVM系统中的物理磁盘,是由一个或多个物理卷组成。可以在卷组VG上创建一个或多个逻辑卷LV。VG的大小就是整个LV的空间大小。

     4.逻辑卷(Logical Volume,LV)

       类似于非LVM系统中的磁盘分区,逻辑卷建立在VG之上。LV可以别用户格式化,挂载,存储数据,还可以调整LV的大小。

     5.物理块(Physical Extent,PE)

      每个物理卷PV被划分为成为PE的基本单元,具有唯一编号的PE是可以被LVM寻址的最小单元。PE大小是可以配置的,默认为4MB。所以物理卷PV是由等同的基本单元PE组成。

     6.逻辑块(Logical Extent,LE)

      逻辑卷也被划分为可被寻址的基本单位为LE。在同一个卷组中LE和PE的大小是相同的,并一一对应。


三.LVM的模型和PV,VG,LV之间的关系:

    LVM 逻辑卷的创建和管理

    逻辑卷的创建过程:创建物理卷-->创建卷组-->再创建逻辑卷。

四.逻辑卷的创建和修改:

    逻辑卷创建所涉及的命令:

     1.物理卷涉及的命令有:

      pvcreate,pvremove,pvscan,pvdisplay,pvmove

    2.卷组涉及的命令有:

      vgcreate,vgremove,vgscan,vgdisplay,vgextend,vgreduce

    3.逻辑卷涉及的命令有:

      lvcreate,lvremove,lvextend,lvreduce,lvs,lvdisplay

    逻辑卷的创建过程:

    1.创建物理文件系统,将其文件系统的类型设置为LVM,分区时修改文件系统类型为8e:

    添加一块磁盘(做实验准备)进行分区:

     进行创建分区,在次创建的分区大小都为3G,以便实验。

LVM 逻辑卷的创建和管理

    在创建三个分区之后,修改文件系统类型:

    LVM 逻辑卷的创建和管理 

    最终结果:

    LVM 逻辑卷的创建和管理


    2.创建物理卷(PV)

    先查看一下和PV相关命令;

    pvcreate:创建PV

    pvscan:查看系统中具有pv的磁盘

    pvdisplay:显示PV的状态

    pvremove:将PV属性删除,让该分区不具有PV属性

    接下来创建PV:

    LVM 逻辑卷的创建和管理

    查看PV:

    LVM 逻辑卷的创建和管理


    3.创建卷组:

    卷组涉及到的命令:

    vgcreate:创建VG

    vgscan:查看VG

    vgdisplay:显示VG状态

    vgextend:扩展VG,就是增加物理卷

    vgreduce:缩小VG,就是去除一个或多个物理卷

    vgremove:删除VG

    vgrename:vg重命名

     创建VG的命令格式:vgcreate [-s size] VG名 PV

    LVM 逻辑卷的创建和管理

    LVM 逻辑卷的创建和管理

    

    创建好卷组之后,我们来扩展VG:vgextend vgName  PV

    LVM 逻辑卷的创建和管理 


    在此进行缩小卷组:vgreduce vgName PV(就是移除一个或多个PV)

    LVM 逻辑卷的创建和管理

        

    修改卷组名字:

    LVM 逻辑卷的创建和管理


    4.创建逻辑卷

    逻辑卷涉及的命令:

     lvcreate:创建LV

    lvscan:查看系统上的LV

    lvdisplay:

    lvextend:扩展LV

    lvreduce:缩小LV

    lvremove:删除一个LV

    

    创建LV:命令格式 lvcreate -L (大小M,G,T) -n LV名 VG名

        -l:也可以制定大小,后面跟的是PE个数,

    LVM 逻辑卷的创建和管理

    LVM 逻辑卷的创建和管理

    

    格式化逻辑卷和挂在:

     格式化逻辑卷mylv:

     LVM 逻辑卷的创建和管理

     格式化之后我们创建一个目录/mylv 用来挂在逻辑卷,并在该目录下创建一个文件,为下面实       验做准备。

     LVM 逻辑卷的创建和管理

     LVM 逻辑卷的创建和管理


   5.逻辑卷的扩展和缩小:

    在扩展逻辑卷时,需要先扩展物理边界,再扩展逻辑边界,缩小逻辑卷则反之。如下图:

    LVM 逻辑卷的创建和管理

    1.扩展逻辑卷

    逻辑卷的扩展命令:格式为:lvextend -L [+]大小 LV名

              -L +4G表示扩展4G 

              -L 4G 表示扩展到4G

    逻辑卷mylv已经挂在到/mylv目录下,并且该目录还有一文件。此时我们扩展逻辑卷:

    扩展物理边界:

    LVM 逻辑卷的创建和管理

    在扩展逻辑边界:

    LVM 逻辑卷的创建和管理

    

     2.缩小逻辑卷

    注意:缩小逻辑卷,不能再线缩减,必须先卸载。确保缩减之后的空间大小依然能够存储原有     的数据。检查文件,文件系统处于一致性状态。

     (1).卸载逻辑卷和进行文件系统检测(命令为e2fsck -f /dev/myvg0/mylv):

    LVM 逻辑卷的创建和管理

     (2).先缩小逻辑边界(查看缩小之后的大小):

    LVM 逻辑卷的创建和管理

     (3).再缩小物理边界然后查看大小

    命令:lvreduce -L [-](大小) LV名

    LVM 逻辑卷的创建和管理

   总结:在扩大和缩小逻辑卷时,使用命令的顺序刚好相反。但是缩减时必须先卸载逻辑卷

    扩大:lvextend -L +1G /dev/myvg0/mylv

        resize2fs -p /dev/myvg0/mylv

    缩小:umount /dev/myvg0/mylv

        e2fsck -f /dev/myvg0/mylv

        resize2fs /dev/myvg0/mylv 2G(这里2G指缩减到2G)

        lvreduce -L -1G /dev/myvg0/mylv

    

五:实现快照,创建快照卷:

    生命周期为整个数据时长,在这段时间内,数据的增长量不能超出快照卷大小;

    快照卷不能修改,只能只读;

    快照卷必须和原卷在同一个卷组中:

    创建快照卷命令:lvcreate -s -L (数字大小) -n mylv-snap -p r /dev/myvg0/mylv 

    -s 创建快照卷

    -L 指定大小

    -n 快照名字

    -p r|w 指定权限

    对逻辑卷mylv创建快照卷并创建一目录挂在此快照卷

   LVM 逻辑卷的创建和管理