逻辑卷(LVM)的创建

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了逻辑卷(LVM)的创建相关的知识,希望对你有一定的参考价值。

      逻辑卷支持在线拉伸逻辑卷(lv)是将几个磁盘分区或者块设备(pv,pv的id必须是8e的,pv可以位于不同的磁盘分区里,pv大小可以不一)组织起来形成一个大的扩展分区(vg,卷,一个vg至少要包含一个pv),该扩展分区不能直接用,需要将其划分成逻辑卷(lv)才能使用,lv可以格式化成不同的文件系统,挂载后直接使用。 lv的扩展和缩减是不会影响原有数据的,但逻辑卷缩减的风险大于逻辑卷扩展的风险。逻辑卷可以支持快照功能。

1.逻辑卷的创建步骤

    1.1分区或增加新的硬盘,注意分区的ID设置为8e

    1.2.创建物理卷pv的指令格式:pvcreate /dev/sdX /dev/sdXn /dev/md1

    查看命令pvs  查看有哪些pv 

    pvdisplay [/dev/sdX]  查看所有pv(也可以指定pv)的详细信息

技术分享图片

    1.3.创建卷组vg

        vgcreate vgName /dev/sdX   指定要创建成vg的块设备,并为vg命名

        vgs    查看现有的vg

        vgdisplay [vgname]   查看现有的vg的详细信息(也可以指定要查看的vg)

技术分享图片

   1.4.创建逻辑卷lv

        lvcreate -l pe num /-L size -n lvname vgname

                                      -l   指定逻辑卷的大小(LE数)

                                      -L  指定逻辑卷的大小,单位为“kKmMgGtT”字节;

                                      -n  指定逻辑卷的名字

        lvs  查看现有的逻辑卷(简单查看)

        lvdisplay [/dev/vgname/lvname]     详细查看所有或指定的逻辑卷

技术分享图片

了解lvm名称的命名标准

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

             设备名:/dev/dm-x

             软连接命名方式:/dev/mapper/vgname-lvname

                       /dev/vgname/lvname

        都可通过以上方式都可查看到该lv

技术分享图片

   以上操作就是成功完成了lvg的创建,接下再对该逻辑卷格式化文件系统,并对文件系统进行挂载

到该lv下:

技术分享图片

技术分享图片


删除逻辑卷

1.先卸载umount /挂载点/

2.删除逻辑卷先从lv开始删除

技术分享图片

3.第三步删除卷组vg

技术分享图片

4.最后再删除pv

技术分享图片

2.扩展逻辑卷 

     扩展一般存在两种情况,第一种情况,需要扩展的pe数量,vg可以提供(以下是ext文件系统)

     lvextend -L +sizeM -r /dev/vgname/lvname 

                                     -r 直接调用resize2f命令

     resize2fs /dev/vgmage/lv01 或 lvextend中指定-r   (仅限ext文件系统类型,后面不用跟具体

     的大小,跟跟减少时不同,其自动拉伸到极致)

技术分享图片

技术分享图片

设置成功后,df查看lv大小由2G扩大到3G。

技术分享图片

第二种情况,vg空间不够,需先扩展vg,扩展vg就是往vg中加pv。

1.加硬盘,或创建分区等来增加block device,后创建成pv

技术分享图片

2.扩建vg,由下图可清晰看见pv由两块设备组成,之后再扩建lv

技术分享图片

XFS文件系统的在线扩展

第一种情况,需要扩展的pe数量,vg可以提供

        lvextend -L +500M /dev/vgmage/lv01 

        xfs_growfs /dev/vgmage/lv01 或 lvextend中指定-r (只有此处与ext系统文件类型不同)

第二种情况,vg空间不够,需先扩展vg,扩展vg就是往vg中加pv

        1.加硬盘,或创建分区等来增加block device

        2.创建pv

        pvcreate /dev/sdb

        3.扩展vg

        vgextend vgmage /dev/sdb

        4.lvextend -L 4G -r /dev/vgmage/lv01

        

减小逻辑卷

   在减小逻辑卷的时候可能存在数据的丢失,为了避免这种因减小逻辑卷而带来的不必要的麻烦,需

要离线卸载严格按照以下步骤进行操作。

 1.先进行卸载操作。

            umount /data/lvmtest1/

 2.卸载之后,强制检测内存中有哪些块没用,便于后续文件系统的减小

      e2fsck -f /dev/vgname/lvname

技术分享图片

 3.接下来修改系统文件大小设定lv挂载的文件系统大小需要减小的大小(这里与增加时不同,一定

    要写设定的大小,因为要减少多少是已知的)

       resize2fs /dev/vgname/lvname sizeM

技术分享图片

4.修改磁盘的大小(sizeM 前有减号表示要减少多少,不带则表示减少到多少且不能小于原lv大小)

            lvreduce -L sizeM /dev/vgname/lvname

原lv大小为2G,命令lvreduce -L 1G /dev/vgsjj/lvsjj 如果文件系统大小比lv大,操作虽然会成功

减小lv,但系统启动不成功。文件系统的大小一定要小于lv大小。

技术分享图片

  5.重新挂载系统文件

            mount -a

注意:如果进行了减小lv时出现文件系统大于减小后lv大小造成系统启动不成功需要修改配置文件。

技术分享图片

如果进行了减小lv时,出现文件系统大于减小后的lv大小造成系统启动不成功时,需要修改配置文

件因为写入了配置文件/etc/fstab,所以开机不能正常启动。

技术分享图片

开机后会进入下图所示的界面,输入密码即可进入命令行界面,接下来需要修改配置文件把开机自

检“2”修改成“0”

技术分享图片

mount -o remount,rw /  重新挂载并给写的权限

vim /etc/fstab  编辑配置文件

技术分享图片

修改成功后再重新启动,分别查看lvs和系统文件的大小。由于没有具体的显示文件系统的大小,我

们需要先通过block count大小使用bc算出文件系统的大小

scale=10

4*524288/1024/1024

2.0000000000  算出文件系统的结果为2G

技术分享图片

之后再把lv扩大到比算出的文件系统的内存要大。

技术分享图片

技术分享图片

最后mount -a 重新挂载。

技术分享图片


以上是关于逻辑卷(LVM)的创建的主要内容,如果未能解决你的问题,请参考以下文章

LVM逻辑卷创建管理

LVM逻辑卷:创建LVM分区实例

LVM逻辑卷创建管理

lvm(逻辑卷管理)最全案例解析

LVM逻辑卷管理--在线扩容逻辑卷与卷组容量缩减逻辑卷快照

LVM逻辑卷管理