如何将LVM容器恢复到更大的物理分区?

如何将LVM容器恢复到更大的物理分区?

该设置是一个加密的 LVM 容器/PV,其中包含一些 ext4 分区。我正在将它们移至新机器,但磁盘上有更多空间。因此,我创建了一个更大的加密 LVM 容器/PV。我有dd旧容器的转储(保存 LVM PV 的整个 GPT 分区,仍然加密),但实际磁盘不见了。

我怎样才能最好地恢复数据,并能够在执行此操作时调整(扩大)分区的大小 - 或者至少在较大的 PV 内创建新的分区?

由于启动时需要输入的加密密码数量较多,因此新磁盘上仍应只有一个 PV。我搜索了一下,但没有找到这种情况的答案。

答案1

luks 加密标头不依赖于也不记录底层设备的大小。如果您只是将加密分区添加到更大加密分区,那么当您使用 打开新的较大分区时cryptsetup luksOpen,其底层大小也会更大。

如果您使用它来存储 LVM 物理卷,则只需运行pvresize /dev/mapper/plaintext(或任何解密的 PV 分区)。如果不指定大小,pvresize则仅占用整个物理分区。

也就是说,也许更好的方法来完成您想做的事情是将新的更大的加密分区设置为新分区,然后pvcreate将其添加到卷组中。此时,您可以开始删除旧分区,然后pvmove /dev/mapper/oldplaintext使用pvremove /dev/mapper/oldplaintext.这种方法的优点是在复制数据时您仍然可以使用文件系统。

相关内容