网站搜索

如何在 Linux 中扩展/减少 LVM(逻辑卷管理) - 第二部分


之前我们已经了解了如何使用 LVM 创建灵活的磁盘存储。在这里,我们将了解如何扩展卷组、扩展和减少逻辑卷。在这里,我们可以减少或扩展逻辑卷管理(LVM)中的分区,也称为灵活卷文件系统。

要求

  1. 使用 LVM 创建灵活的磁盘存储 – 第一部分
我们什么时候需要减少音量?

可能我们需要创建一个单独的分区用于任何其他用途,或者我们需要扩展任何低空间分区的大小,如果是这样,我们可以减少大尺寸分区,并且我们可以通过以下简单的方法轻松扩展低空间分区脚步。

我的服务器设置 – 要求
  1. 操作系统 – CentOS 6.5,带 LVM 安装
  2. 服务器IP – 192.168.0.200

如何扩展卷组并减少逻辑卷

逻辑卷扩展

目前,我们有 1 个 PV、VG 和 2 个 LV。让我们使用以下命令一一列出它们。

pvs
vgs
lvs

物理卷和卷组中没有可用空间。所以,现在我们无法扩展lvm大小,为了扩展我们需要添加一个物理卷(PV),然后我们必须通过扩展vg.我们将获得足够的空间来扩展逻辑卷大小。因此,首先我们要添加一个物理卷。

为了添加新的 PV,我们必须使用 fdisk 来创建 LVM 分区。

fdisk -cu /dev/sda
  1. 创建新分区 按n
  2. 使用p选择主分区。
  3. 选择要选择多少个分区来创建主分区。
  4. 如果有其他可用磁盘,请按1
  5. 使用t更改类型。
  6. 键入 8e 将分区类型更改为 Linux LVM。
  7. 使用p打印创建分区(这里我们没有使用该选项)。
  8. w 写入更改。

完成后重新启动系统。

列出并检查我们使用 fdisk 创建的分区。

fdisk -l /dev/sda

接下来,使用以下命令创建新的 PV(物理卷)。

pvcreate /dev/sda1

使用以下命令验证 pv。

pvs

扩展卷组

将此 pv 添加到 vg_howtoing vg 中以扩展卷组的大小,以获得更多空间来扩展 lv

vgextend vg_tecmint /dev/sda1

让我们检查一下现在使用的卷组的大小。

vgs

我们甚至可以看到哪个 PV 用于创建特定的卷组。

pvscan

在这里,我们可以看到哪些卷组位于哪些物理卷下。我们刚刚添加了一个 pv,它完全免费。在扩展之前,让我们看看当前每个逻辑卷的大小。

  1. LogVol00 为交换定义。
  2. LogVol01 为/定义。
  3. 现在 /(根目录)的大小为 16.50 GB。
  4. 目前有 4226 个物理扩展 (PE) 可用。

现在我们要扩展/分区LogVol01。展开后我们可以列出上面的尺寸来确认。我们可以使用GB或PE来扩展,正如我在LVM PART-I中解释的那样,这里我使用PE来扩展。

为了获得可用的物理扩展大小运行。

vgdisplay

4607 个可用 PE=18GB 个可用空间。因此,我们可以将逻辑卷扩展到 18GB 以上。让我们使用PE大小来扩展。

lvextend -l +4607 /dev/vg_tecmint/LogVol01

使用 + 添加更多空间。扩展后,我们需要使用以下命令重新调整文件系统的大小。

resize2fs /dev/vg_tecmint/LogVol01

  1. 用于使用物理扩展来扩展逻辑卷的命令。
  2. 在这里我们可以看到它从16.51GB扩展到了34GB。
  3. 如果文件系统已安装并且当前正在使用,请重新调整文件系统的大小。
  4. 为了扩展逻辑卷,我们不需要卸载文件系统。

现在让我们看看使用重新调整大小的逻辑卷的大小。

lvdisplay

  1. LogVol01 定义为/扩展卷。
  2. 扩展后,从 16.50GB 变为 34.50GB。
  3. 当前扩展,扩展前有 4226 个,我们添加了 4607 个扩展进行扩展,总共有 8833 个。

现在,如果我们检查 vg 可用的 Free PE,它将为 0。

vgdisplay

查看扩展的结果。

pvs
vgs
lvs

  1. 添加了新的物理卷。
  2. 卷组 vg_howtoing 从 17.51GB 扩展到 35.50GB。
  3. 逻辑卷LogVol01从16.51GB扩展到34.50GB。

到这里我们就完成了扩展卷组和逻辑卷的过程。让我们转向逻辑卷管理中一些有趣的部分。

减少逻辑卷 (LVM)

在这里我们将了解如何减少逻辑卷。每个人都说这很关键,当我们减少 lvm 时可能会导致灾难。减少 lvm 确实比逻辑卷管理中的任何其他部分更有趣。

  1. 在开始之前,最好先备份一下数据,这样万一出了问题就不会头疼了。
  2. 要减少逻辑卷,需要非常仔细地完成 5 个步骤。
  3. 在扩展卷时,我们可以在卷处于挂载状态(在线)时对其进行扩展,但是对于减少,我们必须在减少之前卸载文件系统。

让我们看看下面的 5 个步骤是什么。

  1. 卸载文件系统以减少。
  2. 卸载后检查文件系统。
  3. 减少文件系统。
  4. 将逻辑卷大小减小到小于当前大小。
  5. 重新检查文件系统是否有错误。
  6. 将文件系统重新安装回舞台。

为了演示,我创建了单独的卷组和逻辑卷。在这里,我将减少逻辑卷howtoing_reduce_test。现在大小为 18GB。我们需要将其减少到10GB而不丢失数据。这意味着我们需要从 18GB 中减少 8GB。该卷中已存在 4GB 数据。

18GB ---> 10GB

在减少大小时,我们只需要减少 8GB,因此减少后会四舍五入到 10GB。

lvs

在这里我们可以看到文件系统信息。

df -h

  1. 卷的大小为 18GB。
  2. 它已经使用了 3.9GB。
  3. 可用空间为 13GB。

首先卸载挂载点。

umount -v /mnt/tecmint_reduce_test/

然后使用以下命令检查文件系统错误。

e2fsck -ff /dev/vg_tecmint_extra/tecmint_reduce_test

注意:必须通过每 5 个步骤的文件系统检查,否则您的文件系统可能存在问题。

接下来,减少文件系统。

resize2fs /dev/vg_tecmint_extra/tecmint_reduce_test 10G

使用 GB 大小减少逻辑卷。

lvreduce -L -8G /dev/vg_tecmint_extra/tecmint_reduce_test

要使用 PE 大小减少逻辑卷,我们需要知道卷组的默认 PE 大小和总 PE 大小的大小,以便进行小计算以获得准确的减少大小。

lvdisplay vg_tecmint_extra

这里我们需要做一点计算,使用 bc 命令得到 10GB 的 PE 大小。

1024MB x 10GB = 10240MB or 10GB

10240MB / 4PE = 2048PE

CRTL+D 退出 BC。

使用 PE 减小尺寸。

lvreduce -l -2048 /dev/vg_tecmint_extra/tecmint_reduce_test

重新调整文件系统的大小,在这一步中,如果出现任何错误,则意味着我们弄乱了文件系统。

resize2fs /dev/vg_tecmint_extra/tecmint_reduce_test

将文件系统安装回同一点。

mount /dev/vg_tecmint_extra/tecmint_reduce_test /mnt/tecmint_reduce_test/

检查分区和文件的大小。

lvdisplay vg_tecmint_extra

在这里我们可以看到最终结果,逻辑卷大小减少到 10GB。

在本文中,我们了解了如何扩展卷组、逻辑卷以及减少逻辑卷。在下一部分(第三部分)中,我们将了解如何拍摄逻辑卷快照并将其恢复到早期阶段。