一、LVM简介

  LVM (Logical Volume Manager) 是一个逻辑卷管理器,它允许用户将多个硬盘分区或者整个硬盘组成一个或多个逻辑卷。LVM 可以在运行时动态地改变逻辑卷的大小,而不需要关机或重新启动系统。它也可以将多个硬盘的存储空间组合在一起,形成一个大容量的存储池,使得数据的管理更加灵活和方便。LVM 已经成为了许多 Linux 发行版的标准功能之一,广泛应用于数据中心、服务器、虚拟化环境等场景中。如下图所示,简单来说LVM就是将分区或者磁盘逻辑转化为PV(Physical Volume),将PV加入到VG(Volume Group)中,再根据需求将VG中的存储空间分配到LV(Logical Volume)中。博文将以扩容/home分区磁盘空间为例介绍EXT4文件系统格式下LVM是如何进行磁盘扩容的。实际上LVM是支持动态调整的,包括扩容和减小,但实际操作中跟文件系统格式也有关系,ext4格式既可以扩容也可以减小(回收未使用的空间),xfs文件系统格式则只支持扩容。
Linux之LVM模式下LV和VG扩容-LMLPHP
  实验环境说明:

  • 操作系统:centos7.9
  • 文件系统格式:ext4

二、LV扩容

  LVM磁盘扩容时,我们先检查VG是否还有剩余空间,如果有我们从VG中分配所需磁盘空间给指定的LV即可。实验环境下/home分区大小为20G,使用的是LVM逻辑卷,假设我们需要调整/home分区大小为30G。
Linux之LVM模式下LV和VG扩容-LMLPHP

1、检查vg剩余空间

  使用vgdisplay命令我们可以看到vg名为centos_s178,已经分配的空间为42GB,剩余的空间为16.99GB。

2、查看LV逻辑卷名称和路径

  使用lvdisplay命令查看逻辑卷的情况,可以看到有多个逻辑卷,可以看到逻辑卷路径,逻辑卷名、所属VG、存储空间大小等。

3、扩容指定大小的存储空间到LV

  使用lvextend命令扩容逻辑卷大小,-L参数扩容指定大小。

3、查看磁盘大小

Linux之LVM模式下LV和VG扩容-LMLPHP

4、扩容空间写入文件系统

  resize2fs 命令将扩容空间写入文件系统,如果是xfs格式则可以使用命令xfs_growfs代替。

5、再次验证

  使用df命令再次查看磁盘大小验证,发现/home分区已经调整为了30G大小。
Linux之LVM模式下LV和VG扩容-LMLPHP

三、PV扩容

  假设我们需要将/home分区扩容为40G,因为VG剩余空间只有16.99G,所以磁盘空间不足,需要先添加磁盘,将磁盘添加到VG中,再将指定空间分配到LV。

1、查看磁盘

  新添加或者插入一块磁盘/dev/sdb,使用fdisk命令可以看到。

2、磁盘分区

3、创建PV

4、查看PV信息

5、扩容VG

6、查看VG信息

7、扩容LV

  使用命令lvextend LV PV可以将某PV全部分配给指定的LV。使用lvextend命令扩容逻辑卷大小,记得使用-L参数时不带+是将磁盘扩展到指定大小,带+号则是扩容指定大小的空间。lvreduce命令可以减小逻辑卷大小。
Linux之LVM模式下LV和VG扩容-LMLPHP

8、扩容空间写入文件系统

9、验证扩容结果

Linux之LVM模式下LV和VG扩容-LMLPHP

06-20 11:01