仅使用一个磁盘在 Linux 上的 LVM 中缩小卷组

仅使用一个磁盘在 Linux 上的 LVM 中缩小卷组

我在单个磁盘上使用 LVM,现在我需要调整正在使用的分区(sda2)的大小。

我已经调整了逻辑卷的大小,但无法缩小卷组。我知道 vgreduce 可以完全删除物理卷,但我只有一个,所以我需要缩小它。

是否可以?

答案1

假设是 Linux LVM。

减小 PV 的大小并保持相同的 PV 分区是一个多步骤过程。如果卷减小得太小而无法容纳文件系统,则可能会造成数据损坏,这有点危险。

  1. 备份数据。
  2. 减小文件系统的大小。这对于 XFS 来说是不可能的,在这种情况下,您将需要一个替代解决方案,例如将备份恢复到较小的卷。
  3. lvreduce --resizefs --sizeLV.--resizefs同时执行步骤#2,确保尺寸匹配。
  4. pvresize --setphysicalvolumesizePV。
  5. 重新对 PV 进行分区。包含根文件系统的 PV 比较棘手。可能需要重新启动进入救援环境,此时根目录未挂载,VG 也未激活。

vgreduce从 VG 中删除整个 PV,并且在此示例中没有用。


或者,如果您转而使用整个磁盘而不是分区,这个过程会更简单。

  1. 备份数据。
  2. lvreduce --resizefs --size如果需要安装新磁盘
  3. 创建磁盘,假设它命名为/dev/sdb
  4. vgextend /dev/sdb
  5. pvmove /dev/sda1
  6. vgreduce /dev/sda1

最终结果是,VG 移至新磁盘,旧分区为空并可以删除。

相关内容