首页 > 代码库 > Linux之LVM

Linux之LVM

一:LVM的简介

         LVMLogicalVolume Manager(逻辑卷管理)LVM是将一个或多个底层块设备组织成一个逻辑

         的工具,当硬盘空间不够或多余时可以动态添加删减,具有很大的灵活性。

         它是将底层的物理卷划分为多个PE,再被划分逻辑卷

          wKiom1PHy2PQ6pH_AAB4YhFa2s8671.jpg    

         物理卷:这里指储存设备:硬盘,如:/dev/sda ,/dev/sdb等底层单元。

         PE:物理卷被划分成的单元成为PE,大小可配置,默认为4MB

         卷组:是逻辑上的物理磁盘,可由多个物理硬盘组成,可在上边创建分区。

         逻辑卷:类似于物理硬盘上的分区,在卷组上创建。

二:创建LVM分区

         1,创建LVM分区,方法和创建一般分区一样,但要注意LVM的分区号为8e.

      wKiom1PHy7Sh4pfXAAIotZrl7uw540.jpg

         查看是否创建成功

         wKioL1PHzQnDxKIeAAHw2dc94UA193.jpg

         2,创建PV

         创建pv前先来说一下创建pv的工具

         pvcreate:创建PV

         pvs:查看PV 等同于pvdisplay

         pvremove:移除

         pvmove:移动

         pvscan:扫描有哪些PV

         wKiom1PHzIeDh55DAABzjf84mzg738.jpg

         wKioL1PHzcnTP6foAABjqbUPpqY656.jpg

3,创建vg

         vgcreate:创建vg

                   -S指定PE大小

         vgs:查看vg 等同于vgdisplay

         vgremove:移除vg

         vgmove:移动vg

         vgextend:扩展vg

         vgreduce:缩减vg

         vgscan:扫描已有vg

         wKiom1PHzPSg-NhRAAGCdtoGbcs166.jpg

         3,创建lv

         lvcreate:创建lv

                   -nlv_name:逻辑卷名

                   -L#UNIT {mMgGtT}:指定逻辑卷大小

                   VG_NAME    卷组名

         lvs:查看lv等同于lvdisplay

         lvremove:移除lv

      lvmove:移动lv

         lvextend:扩展lv

         lvreduce:缩减lv

         lvscan:查看lv

     wKioL1PHzrnCaahUAAC70UQppaU101.jpg

         Lv的访问路径:             

            1/etc/VG_NAME/LV_NAME

                            /etc/myvg/mylv

            2/etc/mapper/VG_NAME-LV_NAME

                            /etc/mapper/myvg-mylv

            路径1和路径2都是符号链接,指向文件/dev/dm-#

三:扩展逻辑卷

         扩展逻辑卷前先对以创建的逻辑卷进行创建文件系统,挂载在一个空闲目录下

         扩展逻辑卷的步骤

        1,  先确定扩展目标大小,并确保对应的卷组有足够的空间可用

     wKioL1PHzz3QztkHAAC9-M7K_hs680.jpg

        2,  先扩展物理边界

        lvextend –L [+]大小       有加号为扩展多少,没有为扩展到多少

     wKioL1PHz3SA85FOAAEefZ5oGaA017.jpg

     此时只扩展了物理边界,还没有扩展逻辑边界,

    3,  扩展逻辑边界

         resize2fs [可指定扩展的大小,不指定扩展到最大]  /dev/VG_NAME/LV_NAME

         resize2fs  /dev/myvg/mylv  :逻辑大小扩展到最大边界

         结果为:

        wKioL1PHz7nxR8SVAADbl6EIrTs661.jpg

四:缩减逻辑卷

         注意:逻辑卷缩减要离线,且缩减后的空间要能容得下已有数据

         1,  第一步先umount卸载挂载的逻辑卷

         2,  确定缩减目标大小,并保证对应的逻辑卷大小空间足够

         3,  e2fsck  –f  强制检测 /dev/myvg/mylv

         4,  先缩减逻辑边界

    resize2fs DEVICE  大小(缩减到多大)

         5,  缩减物理边界

    Lvreduce –L [+]大小  /dev/myvg/mylv

         缩减很危险,操作需谨慎

五:创建快照卷

         Lvcreate

                   -LSIZE :指定快照大小

                   -n:name快照卷的名称

                   -s:说明是快照卷

                   -p:指定快照卷的访问权限 {r|rw},快照卷一般要求只读,不让写操作

*快照卷是对某逻辑卷进行的,因此必须跟目标逻辑卷在同一卷组中,无需指明卷组

         确保目标卷有足够的空间容纳快照卷的大小

                   例:lvreate –L512M –n mylv-snap –p r –s /dev/myvg/mylv

                   同时确保/dev/myvg/mylv所挂载的目录没有被进程访问修改

                   方法:重新挂载只读

                            mount–o remount,ro  /dev/myvg/mylv

                            创建快照

                            重挂载为读写

mount –o remount,rw /dev/myvg/mylv

快照卷创建成功!


本文出自 “aolens·程超” 博客,请务必保留此出处http://aolens.blog.51cto.com/7021142/1439697