通过 dd 将硬盘复制到更大的硬盘

通过 dd 将硬盘复制到更大的硬盘

dd我正在尝试在 GNU/Linux 上将具有 IBM PC 风格分区表的整个 HDD 复制到更大的 HDD 。问题是:

  1. 我可以通过更改分区表来使用较大磁盘上的额外空间吗?
  2. 我在源磁盘上使用 LVM。当我复制它或使用较大磁盘上的额外空间时,它是否有帮助或使问题变得复杂?

答案1

如果您的磁盘具有相同类型的分区表,即 BIOS 中具有相同类型的寻址模式 (CHS/LBA/LBA32/GPT),则可以执行此操作。如果您不确定,我建议您将新磁盘划分为与旧磁盘大小相同的分区,并仅复制(通过 dd)分区,而不是整个磁盘。然后您可以使用磁盘的最后一部分作为 LVM 分区并将其包含到现有的 PV 中。

答案2

是的,你可以,但是之后,fdisk 和你的文件系统会认为你的硬盘比实际小。当您管理虚拟机并要求您扩展其硬盘驱动器时,经常会遇到此问题。

由于您使用 LVM,因此您需要在 LVM 和文件系统级别调整其大小。

  1. 对于lvm,你需要
    1. 调整大小应用新尺寸
    2. 延伸使用这些可用的新扩展扩展您的逻辑卷
  2. 对于 ext*,您有调整2fs大小命令。看这一页有关其他文件系统的更多信息。

编辑:事实上,这取决于您复制整个原始磁盘还是仅复制一个逻辑卷。如果您复制逻辑卷,它就像经典的磁盘复制:之后您只需要扩展文件系统即可。

答案3

由于您使用的是 LVM,因此最好使用 LVM 来移动逻辑卷,而不是使用dd.只需将新磁盘添加为新 PV(使用pvcreatevgextend),然后使用pvmove将逻辑卷从旧 PV 迁移出来,然后vgreduce删除旧 PV。然后您需要在新驱动器上安装引导加载程序(grub?grub2?取决于您的发行版)。

相关内容