Linux:克隆操作系统磁盘,没有空白空间,允许稍后恢复数据

Linux:克隆操作系统磁盘,没有空白空间,允许稍后恢复数据

我有一个装有 Linux 操作系统的 SSD,但我目前没有使用它。SSD 通常放在我的台式电脑中,但我暂时不会使用它。

我想在笔记本电脑上使用 SSD 一段时间。由于它们仍然非常昂贵,所以我不太想再买一个,因为我这里已经有了一个非常好的 SSD。

我考虑过使用dd克隆磁盘,以便将来需要恢复桌面系统时可以恢复它。但是它有 240 GB 大小,但目前只使用了 5 GB,所以理想情况下我希望能够在不使用所有这些空间的情况下克隆它。

  • 如果我压缩输出 iso 映像,这可能吗?

  • 我可以使用 rsync “复制”稍后需要的文件(包括隐藏文件?)吗?这只有约 5 GB 大小 - 但我能否正确恢复这些文件?例如,我可能需要在执行此操作时保留权限,以防止在将文件恢复到 SSD 时出现问题?

  • 有没有更好的方法?

操作系统是 debian/ubuntu。

答案1

您只需要保存文件,剩余空间无关紧要(除非您稍后想要恢复文件),因此dd类似工具会从 235GB(240GB 减去已使用的 5GB)开始,这实在是太多了。无需花费时间和精力以及 SSD 有限的写入寿命来尝试用零填充所有空白空间,只需备份 5GB 的文件即可。

rsync并且它的--archive旗帜也很好。

对于更小的备份,请使用 squashfs 映像。这是大多数实时 Linux ISO 所使用的。从另一个实时系统/ISO 运行也可以避免任何临时/正在使用/锁定文件。安装(例如/mnt)后基本上是:

mksquashfs /mnt backup.squashfs 

您可以使用可能更小且更慢的 xz 压缩:

mksquashfs /mnt backup.squashfs -comp xz  -b 1048576

然后,当您准备好时,只需挂载并复制文件即可。由于它是随机访问的,因此也可以进行良好的常规备份 - 您不必扫描整个 .tar.xz 或


如果您要覆盖引导扇区(和 GRUB),您可能也想保存它的副本。对于 MBR,它只是前 512 个字节,因此dd将其抓取到名为的文件中MBR.dd

dd if=/dev/sda of=MBR.dd bs=512 count=1

GPT 可以使用sgdisk参考 U&L 上的答案) 喜欢:

sgdisk --backup=<file> <device>

要恢复备份,请使用:

sgdisk --load-backup=<file> <device>

但是忽略分区表也很好,您将有机会创建和恢复到更小的分区(仅使用 240GB 中的 5GB),并且使用实时 ISO 恢复 GRUB 也很容易。

相关内容