Linux RHEL:高效制作磁盘映像

Linux RHEL:高效制作磁盘映像

我有一个装有 RHEL 的 Linux 机器。它的磁盘 (hda1) 有大约 25GB 的可用空间。

我有另一个磁盘(hda2),大小为 250GB,上面有另一个 RHEL 实例,分区为 200GB。磁盘上的数据占用了大约 21GB 的数据。

需要获取 hda2 的映像并将其恢复到其他相同规格的磁盘上。制作 hda2 映像文件的最佳方法是什么?

理想情况下,图像大小应在 25GB 左右,因为磁盘上的实际数据只有 21GB。

我知道以下两种方法。

Method 1 : Raw Image

dd if=/dev/hda2 of=/path/to/image
dd if=/path/to/image of=/dev/hda3

问题 1:上述方法会生成 250GB 的巨型映像吗?它有效吗?

Method 2 : Compressed Image.

dd if=/dev/hda2 | gzip > /path/to/image.gz
gzip -dc /path/to/image.gz | dd of=/dev/hda2

问题 2:我尝试了方法 2,但耗时太长。这种方法的缺陷是什么?

上述哪种方法有效?为什么?还有其他 Linux 实用程序可以完成这项工作吗?没有第三方工具。

答案1

这两种方法效率低下 - RAW 磁盘映像的大小相同。压缩的 RAW 映像也会压缩未使用的磁盘块,这些块将包含随机数据,从而增加压缩时间和资源,但大小仍可能大于实际使用量,尤其是在磁盘使用率很高的环境中。当然,您可以使用一些实用程序并用零清除未使用的块,但在此期间您仍然需要重新检查整个磁盘,并且您仍然需要完全读取它 - 即使您使用的是 250 GB 中的 1 GB - 您也将读取所有 250 GB。

有好东西(tm)称为文件复制、tar 和 gzip :) 只需在此过程中保留属性、时间等。唯一的区别可能是 MBR 和启动。如果您使用常规分区执行此操作 - 没问题,只需保留并复制/targz。时间/资源高效的压缩方法是 gzip 和 xz。

对于第三方克隆实用程序,我推荐 CloneZilla,它可以满足您的所有需求,只需检查限制,对于操作 - PartedMagic 套件,对于恢复 - RIPLinux 套件。

相关内容