我有一个使用创建的整个 Mac OS HDD 的克隆dd
,如下所示:
sudo dd if=/dev/sda of=/media/mint/backup/mac-backup.img
我在创建时使用 验证了图像的完整性diff
。现在我已经把机器拿回来了,我想恢复备份。我可以简单地做:
sudo dd if=/media/mint/backup/mac-backup.img of=/dev/sda
或者这会失败吗?我有一个使用不同过程制作的旧备份,我知道我可以在正常的 Mac 设置过程中进行恢复,所以如果这不起作用,我可以这样做。但是我不知道该设置实用程序是否存在于 HDD 上,或者是否位于更永久的存储位置(例如 MB),所以我担心我可能会意外地用dd
.如果发生这种情况,我不知道如何获得新副本。
我是不是要把自己逼到墙角了?
答案1
简短的回答:是的,这很好用。
更长的答案:我曾经dd
按照上面的方法恢复数据,并且成功了。但是,Mac 在开机时不会加载操作系统。从启动设备菜单中选择硬盘可以使其正常启动并且所有数据都在那里。我将 Mac 加载到恢复模式并在磁盘上运行急救,完成此操作后,它在开机时加载操作系统,没有任何问题。
因此,对于将来执行此操作的其他人来说,“dd”是用于 Mac OS HDD 的完全有效的备份和恢复方法。dd
对于任何可能要这样做的人来说,这里有一些进一步的建议:
- 如果您想进行压缩备份,可以通过管道传输
dd
,如下所示:gzip
dd if=/dev/sdX | gzip -c > /back/up/file.img.gz
gunzip -c /back/up/file.img.gz | 压缩包dd=/dev/sdX
如果您认为磁盘可能会生成读取错误以便能够继续运行,则可以使用
noerror
和选项,但要注意您的块大小(设置为或您想要的任何大小),因为块中任何位置的错误都会弄乱整个街区sync
bs=64K
与上述相关,与 一起使用时较小的块更安全
conv=noerror,sync
,但速度较慢。如果您认为读取错误不太可能发生,您可能需要增加块大小该选项
status=progress
可让您密切关注事情的进展情况
答案2
成功恢复整个 HDD shell 的有效二进制副本。但请注意,实际上不可能从正在运行的系统准备工作备份 - 您需要使用单用户模式或恢复磁盘进行备份。 RW 安装的分区是一个“活的”系统,其内容在 dd 运行期间发生变化的概率几乎是 100%。
所谓的恢复磁盘是放置在磁盘末尾附近的隐藏分区。如果您运行 dd 并从完整磁盘备份中恢复,它也会被覆盖。 HDD 之外唯一的东西是 NVRAM(包含默认可启动设备等信息)。