创建,扩展,缩减LVM2及快照

  • 相关概念

    lvm英文 Logical Volume Manager,逻辑卷管理类似于raid,但又有别于raid, 它是能够将一个或多个底层块设

    备组织成一个逻辑设备的模块不具备容错功能,任一设备损坏或分区损坏,对数据是致命的;它主要有三个部分

    组成,分别是pv,vg和lv。

        PV:Physical Volume物理卷,组成LVM的最底层的元素,也可理解为物理分区,但构建lvm不能直接使用               Linux物理分区,得先将物理分区期转化为最小单位pv,使用pv管理工具pvcreate /dev/DEVICE

        VG:Volume Group卷组,将每个独立的PV组合起来形成的一个存储空间就称为VG,在一个VG空间中可以构

            建多个逻辑卷,即LV,创建VG使用vgcreate  [-                

            s [kKmMgGtTpPeE]] VolumeGroupName  PhysicalDevicePath [PhysicalDevicePath…]

        LV:Logical Volume逻辑卷,在VG的存储空间中取一段空间用来构建LV,它的空间依赖是VG,也就是说如

            果要扩展LV,首先是得保证VG的物理卷组是不是有足够的空间。创建完成之后这个LV便可以使用,可

            以创建文件系统,可以挂载,直接当一个普通分区来使用,命令 lvcreate -L #[mMgGtT] –

             n NAME VolumeGroup

        PE:Physical Extent物理扩展块,基于物理卷组是LVM的最小存储单位,默认为4M,在创建VG的时候

            VGCREATE -s是指定设置单个PE的存储单位为多大

blob.png

  • 创建LVM

    1.第一步首先创建PV,必须要有空闲的分区,如没有,则相应的创建,如图,我在我自己的机器上创建了2个类型为LVM的分区,/dev/sda5和/dev/sda6 

blob.png

    2.在分区的基础上创建PV,命令:pvcreate /dev/sdc{5,6}

blob.png

    3.创建VG,将创建的PV组合成一个物理卷组,在这里可以指定最小单位块的大小,也就是PE的大小,例如创建一个PE大小为8Mb的VG。命令:vgcreate -s 8M vgname /dev/sdc{5,6},使用vgs可以简略的显示创建vg的情况,使用vgdisplay可以详细显示

blob.png

    4,创建LV,在步骤3中,我总共创建的VG物理卷组的大小是20G,因此,我构建逻辑卷的空间范围只有20G,可以在20G的范围内创建多个LV,例如我再创建2个LV分别是18G和2G,使用命令:lvcreate -L 18G -n lvname1 /dev/vgname 和lvcreate -L 2G -n lvname2 /dev/vgname,如下图,可以看到当我创建完一个18G的lv之后再创建12G的明显空间不够了

blob.png

    5.一个完整的逻辑分区已经创建完成了,为了能正常使用,还必须给这个逻辑分区创建文件系统,然后挂载,我以18G的lvname1为例,使用命令:mke2fs -t ext4 /dev/vgname/lvname1 ,以及挂载且重启自动挂载,在/etc/fstab上添加规则,然后mount -a自动挂载/etc/fstab中的项,至此,一个完整的LVM搭建完成

blob.png

blob.png

blob.png

  • 扩展LVM

    之前创建lv的时候,空间我已经使用完了,因此如果要扩展LVM则需先删掉之前创建的lvname2,使用命令:

    lvremove /dev/vgname/lvname2,然后拓展lvextend -L +2G /dev/vgname/lvname1,虽然此时的逻辑卷的空间已

    经增加了,但是文件系统认到的空间系统还是之前的8G,因此文件系统也相应的要更新resizefs 

    /dev/vgname/lvname    1

blob.png

blob.png

  • 缩减KVM

    缩减KVM主要分四步,1卸载装载在lv上的文件系统,2强制检查修复文件系统,3调整文件系统边界,4缩减LV,5

    重新挂载,下面我就来演示一下

    1.卸载文件系统:命令  umount /dev/vgname/lvname1

    2.强制检查修复文件系统  命令:e2fsck -f /dev/vgname/lvname1

    3.调整文件系统边界   命令:resize2fs /dev/vgname/lvname1 18G

blob.png

    4.缩减LV  命令:lvreduce -L -2G /dev/vgname/lvname1

blob.png

    5.重新挂载  mount -a

  • 快照

    基于将已经创建好的LVM并且已经正常使用的文件系统的数据做一次快照,重新挂载到另外的文件夹中用于备份

    及查看。命令:lvcreat -L +1G -p r -s -n lvname_snap /dev/vgname/lvname1

    1.首先查看原挂载到/users的lvm文件系统都有哪些文件然后据此作快照

blob.png

    2.创建快照并挂载到/mnt,然后可以看到/mnt文件夹中所有的内容便是快照发生的此刻原lvname1文件系统中的文件,如果再后面继续往lvname1中修改增加文件,快照文件夹/mnt是不变的

blob.png

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

(1)
东里西里东里西里
上一篇 2016-02-14 09:55
下一篇 2016-02-14 10:00

相关推荐

  • 26期全程班-第三周博客作业

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

    Linux干货 2017-02-18
  • Linux基础之—用户和组管理

    导言:   我们在使用计算机资源时为了资源的合理规划和利用,同时为了实现更好的管理,需要在计算机里有一个使用资源的凭证,这个凭证就是用户,下面就来介绍Linux用户和组管理。 1.资源分派:     资源的分派可以分为三个步骤,分别是    (1)认证(Authertication)   &nbsp…

    Linux干货 2016-08-04
  • 基于Cobbler实现多版本系统批量部署

    前言 运维自动化在生产环境中占据着举足轻重的地位,尤其是面对几百台,几千台甚至几万台的服务器时,仅仅是安装操作系统,如果不通过自动化来完成,根本是不可想象的。记得前面我们探究了基于PXE实现系统全自动安装,但PXE同时只能提供单一操作系统的批量部署,面对生产环境中不同服务器的需求,该如何实现批量部署多版本的操作系统呢?Cobbler便可以的满足这一实际需求,…

    Linux干货 2015-07-09
  • nginx

    http http协议:web服务器(类似于httpd)、http reverse proxy(类似于httpd)、imap/pop3 reverse proxy NGINX is a free, open-source, high-performance HTTP server and reverse proxy, as well as an IMAP/P…

    Linux干货 2017-06-25
  • test

    test

    Linux干货 2017-11-26
  • 文件、目录权限

    批量创建新用户: newusers passwd格式文件 批量创建用户,必须和/etc/passwd下的文件格式一样   下面开始批量创建:   首先准备好一个文件:用vi命令建一个user.txt 如图: 然后用cat user.txt 然后newusers批量创建,cat /etc/passwd查看下: 创建成功 批量修改用…

    Linux干货 2016-08-04

评论列表(1条)

  • stanley
    stanley 2016-02-14 09:57

    已置顶,认真看的出,赞