如何备份外部备份驱动器的初始状态?

如何备份外部备份驱动器的初始状态?

我捡到了一个HP Simplesave外置硬盘。它附带一些花哨的软件,但对我来说毫无用处,因为我不使用 Windows。与许多当前面向消费者的备份硬盘一样,备份软件实际上包含在硬盘本身中。我想保存硬盘的初始状态,以便在决定出售时可以恢复它。

备份盒本身是经过一定程度定制的:除了硬盘设备外,它还提供了一个类似 CDROM 的设备/dev/sr0。我了解到,这个 cdrom 设备的目的是通过 Windows 自动播放磁盘本身上的备份应用程序来引导。我不认为有任何保证可以做到这一点,因此保留磁盘的准确状态似乎很重要。

该驱动器采用单个 500GB NTFS 分区格式化。

我最初的想法是使用dd转储磁盘(/dev/sdb)本身,但这被证明是不切实际的,因为生成的文件不稀疏。这似乎是因为 NTFS 的空白空间不是用零填充的,而是用一系列重复的 16 个字节填充的。

我尝试对 的输出进行 gzip 压缩dd。这可以将文件缩减到可管理的大小 — 前 18GB 被压缩到 81MB,而将挂载文件系统的内容压缩为 47MB — 但在我的 Pentium M 处理器上速度非常慢,我承认这有点过时了。处理前 18GB 的​​时间大约为 30 分钟。

因此我采取了分别转储磁盘状态和分区数据的方法。

  • 我已经转储了分区状态

    sfdisk -d /dev/sdb > sfdisk.-d.out
    
  • 我还创建了 NTFS 分区(磁盘上唯一的分区)的压缩映像,

    ntfsclone --save-image --output - /dev/sdb1 | gzip -c > ntfsclone.img.gz
    

我还应该做些什么来确保能够恢复驱动器的精确原始状态?

答案1

最初的 dd+gzip 设置是你最好的选择。事实上,一些法医专家认为 'dd' 是仅有的能够逐位复制磁盘的工具。当然,您可以在速度更快的计算机上创建副本,而不必在将要使用该磁盘的计算机上进行复制。

相关内容