LVM(逻辑卷管理)

LVM 逻辑卷管理



概述

     LVM是将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中,这样可以实现磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性。与传统的磁盘与分区相比,LVM为计算机提供了更高层次的磁盘存储。它使系统管理员可以更方便的为应用与用户分配存储空间。



一、LVM相关术语

  1.物理存储介质(The physical media):

       这里指系统的存储设备:硬盘,如:/dev/hda1、/dev/sda等等,是存储系统最低层的存储单元。

  2.PV(物理卷)

       物理卷就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。

  3.VG(卷组)

       LVM卷组类似于非LVM系统中的物理硬盘,其由物理卷组成。可以在卷组上创建一个或多个“LVM分区”(逻辑卷),LVM卷组由一个或多个物理卷组成。

  4.LV(逻辑卷)

       LVM的逻辑卷类似于非LVM系统中的硬盘分区,在逻辑卷之上可以建立文件系统(比如/home或者/usr等)。

  5.PE(physical extent):

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

  6.LE(logical extent):逻辑卷也被划分为被称为LE(Logical Extents) 的可被寻址的基本单位。在同一个卷组中,LE的大小和PE是相同的,并且一一对应。


简单来说就是:

     PV:是物理的磁盘分区

     VG:LVM中的物理的磁盘分区,也就是PV,必须加入VG,可以将VG理解为一个仓库或者是几个大的硬盘。

     LV:也就是从VG中划分的逻辑分区



三、LVM工作原理

 1.逻辑卷管理器:

     1)允许对卷进行方便操作的抽象层,包括重新设定文件系统的大小

     2)可以在多个物理设备间重新组织文件系统

            将设备指定为物理卷PV

            用一个或者多个物理卷来创建一个卷组VG

            物理卷是用固定大小的物理区域(PE)来定义的

            在卷组上创建的逻辑卷LV(由LE组成,实际上就是同一个卷组中的PE,一一对应)

     3)可以在逻辑卷上创建文件系统

        blob.png


2.dm: device mapper:将一个或多个底层块设备组织成一个逻辑设备的模块

      设备名:/dev/dm-#

      软链接:

         /dev/mapper/VG_NAME-LV_NAME

               /dev/mapper/vol0-root

         /dev/VG_NAME/LV_NAME

               /dev/vol0/root

1.png3.LVM更改文件系统的容量:

     LVM可以弹性的更改LVM的容量

    通过交换PE来进行资料的转换,将原来LV内的PE转移到其他的设备中以降低LV的容量,或将其他设备中的PE加到LV中以加大容量

       blob.png



LVM的实现

一、创建PV

        1.与PV相关的一些命令有:

2.png

           pvcreate:将实体partition创建成PV;

           padisplay:显示出目前系统里面的PV状态;

pvdisplay.png

           pvs:简要PV信息显示;

pvs.png

           pvscan:搜寻目前系统上面的任何具有PV的磁碟;

           pvremore:将PV属性移除,让该partition不具有PV属性;

pvremove.png

    2.创建步骤如下:

         1)先准备块设备,调整其id为8e;

pv.png

         2)然后创建pv:pvcreate [-f] /dev/sdb{1,2,3,5}

1.png

         3)查看PV信息:pvdisplay [/dev/sdb{1,2,3,5}]

4.png


卷组VG

    1.与VG相关的一些命令

vg.png     1)显示卷组

         vgs:显示简要信息;

vgs.png

         vgdisplay:显示详细信息;

     2)创建卷组

        vgcreate [-s #[kKmMgGtTpPeE] [卷组名] [物理设备]

     3)管理卷组

        vgextend :扩展卷组,在VG内添加额外的PV

        vgreduce :缩减卷组

     4)删除卷组

        先做pvmove,再做vgremove

   2.创建步骤:

     1)新增一个vg,并指明其包含哪个或哪些pv实现;

vgcreate.png

   2)查看vg信息

vgdisplay.png

   查看包含的pv信息

1.png

    3)如果想增加VG的容量,进行如下操作:

      vgextend [卷组名] [pv名]

vgextend.png   4)如果要想把指定pv从卷组中移除,进行如下操作:

          首先,用pvmove命令把要移除pv中的数据转移到其他pv中

          然后,执行 vgreduce 命令,移除指定pv

vgreduce.png



三、逻辑卷LV

  1.与LV相关的一些命令有:

 lv.png     

     1)显示逻辑卷

          lvs

          lvdisplay

     2)创建逻辑卷

          lvcreate -L #[mMgGtT] -n NAME VolumeGroup

     3)删除逻辑卷

          lvremove /dev/VG_NAME/LV_NAME

     4)重设文件系统大小

          fsadm[options] resize device [new_size[BKMGTEP]]

          resize2fs [-f] [-F] [-M] [-P] [-p] device [new_size]

  2.创建及使用步骤

       1)在mvvg卷组中,创建一个新的逻辑卷LV,名称为mylv,并指明大小为2G;

lvcreate.png

    2)对新创建的逻辑卷,创建文件系统(注意逻辑卷路径,两个都可以)

mkfs.png

      挂载

mount.png



四、扩展和缩减逻辑卷

   1.扩展逻辑卷:

     # lvextend -L [+]#[mMgGtT] /dev/VG_NAME/LV_NAME

lvextend.png

     # resize2fs /dev/VG_NAME/LV_NAME

resize2fs.png


  2.缩减逻辑卷

    # umount/dev/VG_NAME/LV_NAME

    # e2fsck -f /dev/VG_NAME/LV_NAME (针对ext系列的文件系统)

e2fsck -f.png

    # resize2fs /dev/VG_NAME/LV_NAME #[mMgGtT](缩减的是文件系统

resize2fs-1.png

    # lvreduce-L [-]#[mMgGtT] /dev/VG_NAME/LV_NAME(缩减的是物理边界

lvreduce.png

        # mount 重新挂载

mount-1.png



五、快照 (snapshot)

   1.快照工作原理

        快照是特殊的逻辑卷,它是在生成快照时存在的逻辑卷的准确拷贝

        对于需要备份或者复制的现有数据集临时拷贝以及其它操作来说,快照是最合适的选择。

        快照只有在它们和原来的逻辑卷不同时才会消耗空间。

        在生成快照时会分配给它一定的空间,但只有在原来的逻辑卷或者快照有所改变才会使用这些空间

        当原来的逻辑卷中有所改变时,会将旧的数据复制到快照中。

        快照中只含有原来的逻辑卷中更改的数据或者自生成快照后的快照中更改的数据

        建立快照的卷大小只需要原始逻辑卷的15%~20%就够了。也可以使用lvextend放大快照。

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

wKiom1fINCLRGKsgAAB3lg_itMY137.png

   3.由于快照区与原本的LV共用很多PE的区块,因此快照去与被快照的LV必须要要在同一个VG上!系统恢复的时候的文件数量不能高于快照区的实际容量。


使用快照:

   1)为现有逻辑卷创建快照

     #lvcreate -s -L #[mMgGtT]  -n snapshot_lv_name  -p r original_lv_name

wKioL1fINiHRXvWfAAAP3HPmRJQ577.png

     查看快照:lvdisplay

wKiom1fINLqQQv0HAAB0tOsBKSs779.png

   2)挂载快照

wKioL1fINjiC7Em5AAB3_KhswCg592.png  

    3)实验

wKioL1fIN2Tzd-oOAABBI2JLGi8670.png

   3)把数据从快照卷中备份后,就可以删除快照了

wKioL1fIOGSD-5FAAAAvxIk_0ls450.png

  4)如果所有的数据均已备份,不需要了,全部卸载

wKioL1fIOsLDYodRAABoIGGW_iU990.png

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

(0)
zhumengxiaotaozhumengxiaotao
上一篇 2016-09-05 08:49
下一篇 2016-09-05 08:49

相关推荐

  • 如何实现在命令行输入pwd时显示出ifconfig的效果

    1、使用type ifconfig 查看   2、使用type pwd 查看 如果还没有使用过pwd则显示如下,表示pwd属于内部命令,然后输入enable -n pwd 禁用这个内部命令   如果已经使用过,就会显示hash,已经缓存过   此时就不仅需要禁用内部命令,还需要使用hash -d pwd 清除pwd的缓存,使其在…

    2017-07-13
  • 可伸缩的逻辑卷

    什么是逻辑卷? 逻辑卷简称LVM, LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上、文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性.   为什么要使用逻辑卷? 逻辑卷相比于一般的磁盘分区, 具有更高的灵活性。可随时伸缩空间的大小.   构建逻辑分区图:   逻辑卷概念: PV(物理卷): 是在…

    Linux干货 2016-09-01
  • 马哥教育网络班20期+第3周课程练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。  who | cut -d' ' -f1 | sort -u 2、取出最后登录到当前系统的用户的相关信息。 last | head …

    Linux干货 2016-06-26
  • N25-第三周作业

    第三周作业 1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 ~]#who | cut -d' ' -f 1 | sort | uniq 2、取出最后登录到当前系统的用户的相关信息。 ~]#who |tail -1 3、取出当前系统上被用户当作其默认shell的最多的那个shell。 ~]#cat…

    Linux干货 2016-12-18
  • 马哥教育网络22期+第四周作业博客

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。    [root@centos-rpi3 skel]# cp -r /etc/skel /home/tuser1 && chmod -R g-rwx,o-rwx /home/tuser1 …

    Linux干货 2016-09-08
  • Linux 命令小结

    cat /proc/meminfo 校验内存使用 cat /proc/swaps 显示哪些swap被使用 cat /proc/version 显示内核的版本 cat /proc/net/dev 显示网络适配器及统计 cat /proc/mounts 显示已加载的文件系统 lspci -tv 罗列 PCI 设备…

    Linux干货 2017-06-18