如何在 Linux 中扩展/缩减 LVM(逻辑卷管理)?

linuxoperating systemopen source

简介

逻辑卷管理器 (LVM) 是一款功能强大的工具,允许系统管理员动态分配存储空间,而无需重新格式化或重新分区磁盘。LVM 是现代 Linux 系统的重要组成部分。它提供了一个灵活、可扩展且高可用的存储基础架构,可以根据需要轻松管理和扩展。

LVM 由多个层级组成:物理卷、卷组和逻辑卷。物理卷是用于创建卷组的磁盘或磁盘分区。

卷组是物理卷的逻辑集合,可用于创建逻辑卷。逻辑卷类似于虚拟磁盘,可以跨越一个或多个物理卷,并且可以在线调整大小,而不会影响存储在其中的数据。

LVM 在 Linux 系统中的重要性

与传统分区方案相比,LVM 具有多种优势 -

  • 动态调整大小 - 调整分区大小需要先卸载该分区,这意味着在其上运行的应用程序需要停机。使用 LVM,您可以在文件系统仍处于挂载和使用状态时调整其大小。

  • 数据迁移 − 使用 LVM,您可以随时在物理卷之间透明地移动数据。

  • 镜像 − 您可以使用 LVM 的内置镜像功能在多个物理设备之间镜像数据。

  • 快照 − 您可以随时为逻辑卷创建即时快照

  • LUN 管理 − 如果您正在管理 SAN(存储区域网络),那么使用 LVM 可以更轻松地从现有设备创建新设备。

扩展或减少逻辑卷的必要性

组织或个人可能会遇到逻辑卷存储空间不足的情况。当需要额外空间时,扩展逻辑卷至关重要,以确保数据能够有效地存储在可用的存储设备或分区上。当需要回收未使用的空间或优化现有资源时,也需要减小 LVM 的大小。

扩展 LVM

扩展 LVM 的步骤概述

扩展 LVM 涉及向现有逻辑卷组 (LVG) 添加新的存储设备或分区,然后扩展逻辑卷 (LV) 以包含新的空间。最终,这将增加系统的磁盘空间。此过程可以在线进行,这意味着您无需在扩展之前关闭系统,从而为用户带来更多便利。

每个步骤的详细说明

创建新分区

在扩展 LVM 之前,您需要从可用的物理存储设备创建新分区。在 Linux 中,您可以使用 fdisk 或 parted 等工具来创建分区。在用于扩展的存储设备上创建分区后,以 root 身份运行以下命令 -

$ partprobe

此命令会将分区的最新更改通知内核并刷新其缓存。

将分区添加到物理卷

使用"partprobe"创建新分区并刷新内核缓存后,使用"pvcreate"命令将其添加为物理卷 (PV) -

$ pvcreate /dev/sdb1 

在此示例中,`/dev/sdb1` 用作新的物理卷。此命令将新创建的分区初始化为可添加到现有逻辑卷组的物理卷。

扩展逻辑卷以包含新空间

要使用新添加的物理卷中的额外空间扩展逻辑卷组,请运行 `vgextend` 命令 -

$ vgextend /dev/sdb1

将 `` 替换为您现有逻辑卷组的名称。在此示例中,`/dev/sdb1` 是新添加的存储设备,将用于扩展 LVM。

将物理卷添加到 LVG 后,使用 `lvextend` 命令扩展逻辑卷 -

$ lvextend -l +100%FREE

将 `` 替换为您现有逻辑卷的名称。`-l +100%FREE` 选项指示 `lvextend` 使用 LVG 所有物理卷上 100% 的可用空间。

调整文件系统大小

现在您的逻辑卷已扩展,请调整其上的文件系统大小以利用新添加的空间。使用类似"resize2fs"的工具来调整 ext2/ext3/ext4 文件系统的大小 -

$ resize2fs /dev/mapper/-

在此示例中," "和" "分别是您现有逻辑卷组和逻辑卷的名称。按照上述步骤操作,您应该能够在 Linux 中顺利扩展 LVM,而不会遇到任何麻烦。

缩减 LVM

缩减 LVM 的步骤概述

当需要缩减 LVM 的大小时,必须确保不会发生数据丢失。缩减 LVM 的大小包括删除数据、调整文件系统大小以及缩减逻辑卷大小。

每个步骤的详细说明

从要缩减的逻辑卷中删除数据

缩减 LVM 的第一步是删除其中所有不必要的数据。此过程应谨慎操作,因为如果操作不当,可能会导致重要数据丢失。要删除不必要的文件,您可以使用终端命令,例如"rm"或"delete"。在删除任何文件之前,务必检查并确认它们对系统功能不重要。

调整文件系统大小以释放空间

从逻辑卷中删除不需要的文件后,您需要调整文件系统的大小,这可能需要卸载分区或停止使用这些分区的服务。成功完成此步骤后,即可根据需要使用空闲空间。

减小逻辑卷大小

释放文件系统上的空间后,您可以使用适当的终端命令(例如 lvreduce)继续减小逻辑卷大小。请确保不要减小超过所需的大小,因为过度减小可能会影响系统功能。

从卷组中删除未使用的物理卷

完成逻辑卷大小减小过程并确认所有更改均正常运行且不影响系统性能和功能后,请从卷组中删除未使用的物理卷。此步骤可释放不再需要的空间,这对于系统的正常运行和性能至关重要。

此过程包括使用终端命令(例如"pvdisplay")识别未使用的物理卷,并使用"pvremove"安全地删除它们。

管理 LVM 的高级技术

在卷组内的物理卷之间移动数据

当主物理卷 (PV) 空间不足时,您可以向卷组 (VG) 添加另一个 PV,并将部分逻辑卷 (LV) 移动到新卷组。此过程称为"pvmove"。使用 pvmove 的一个优点是它可以在线完成,这意味着您无需关闭系统或停止正在运行的任何应用程序。

将线性逻辑卷转换为条带卷或镜像卷

线性逻辑卷一次只使用一个设备,这意味着其数据按顺序存储在单个磁盘上,直到该磁盘空间耗尽。相比之下,条带化和镜像逻辑卷 (LV) 会同时使用多个设备,从而提高性能并提供磁盘故障冗余。

条带化逻辑卷 (LV) 会同时将数据分配到多个磁盘,而镜像逻辑卷 (LV) 则会在两个或多个磁盘上保留相同的数据副本。将现有的线性逻辑卷 (LV) 转换为任一类型都需要使用 dd 或 tar 等命令将其内容备份到其他设备,然后使用 lvcreate 创建新的条带化/镜像卷。

结论

逻辑卷管理 (LVM) 在 Linux 系统中的磁盘存储管理中发挥着至关重要的作用,它能够在多个磁盘之间灵活分配存储资源。通过扩展或减少逻辑卷,并实施高级技术(例如卷组内物理卷之间的数据迁移、将线性逻辑卷转换为条带化或镜像卷),LVM 用户可以优化磁盘空间使用率,从而提高系统性能。

虽然排除 LVM 管理过程中可能出现的常见问题可能具有挑战性,但快速解决这些问题将避免严重的系统停机,并有助于保持最佳性能水平。


相关文章


有用资源