我不小心删除了 Mac 硬盘上的一个 HFS 分区,现在无法访问重要文件。我还没有格式化磁盘,也没有向磁盘写入新数据,但我不确定哪些恢复步骤最安全。怎样才能在不让情况变得更糟的前提下,从已删除的 HFS 分区中恢复数据?
首先:现在先停止使用该硬盘。对于旧的 HFS 或 HFS+ 外置硬盘,被删除的文件通常仍然在那里,直到有新内容将其覆盖。所以你对磁盘操作得越少,找回数据的几率就越大。
我以前从 HFS 硬盘恢复数据时运气还不错,包括 Finder 已经无法再挂载该卷的情况。这确实让人紧张,尤其是当硬盘里有旧照片或文档时,但仅仅是误删本身并不自动意味着这些文件已经彻底消失。
扫描硬盘前先检查一下
在使用恢复软件之前,先快速做个基本检查:
- 看看硬盘是否仍然会显示在“磁盘工具”中。
- 如果是外置硬盘,尝试更换一根 USB 线缆和另一个接口。
- 如果硬盘盒支持,请检查 SMART 状态。
- 如果硬盘频繁掉线、读取速度极慢,或者出现大量坏扇区,就不要反复继续扫描了。
如果硬盘看起来不稳定,通常更安全的做法是先制作一个磁盘镜像。这样你就可以扫描镜像,而不必继续对原始硬盘造成不必要的负担。
我会用于 HFS/HFS+ 恢复的工具
对于这种情况,我通常会推荐大家使用 Disk Drill。它对 HFS 和 HFS+ 卷的处理相当不错,而且只要“磁盘工具”仍然能看到该设备,它有时还能扫描 macOS 无法在 Finder 中打开的驱动器。
基本流程很简单:
- 将 Disk Drill 安装到你要恢复数据的驱动器以外的位置。
- 在应用中选择 HFS 或 HFS+ 驱动器。
- 选择 搜索丢失的数据。对于大多数外置磁盘,我会使用 通用扫描 这个选项。
- 让扫描完成,不要中途停止。
- 在恢复之前先预览重要文件。
- 将恢复出的文件保存到另一块状态良好的驱动器上,不要存回原始驱动器。
如果您清空了废纸篓或进行了快速格式化
这仍然可能可以恢复。清空废纸篓或进行快速格式化通常会删除文件引用,但实际的文件内容在被覆盖之前可能仍然保留。这就是为什么现在继续向驱动器复制文件是您此刻最不应该做的事情。
另外,如果您有 Time Machine 备份,请先检查它。从备份中恢复更干净,而且通常比进行文件恢复要轻松得多。
什么时候该停止自己尝试
如果硬盘已经出现明显的物理故障迹象,我不会继续反复扫描。比如发出咔嗒声、摩擦声、嗡嗡声、频繁断开连接、导致 Mac 卡死、在“磁盘工具”中消失,或者扫描因读取错误而失败,这些通常都说明是硬件问题。
到了这种时候,继续自己尝试只会让情况更糟。如果数据确实很重要,找专业的数据恢复实验室会更稳妥。
但如果硬盘仍然能被检测到,而且主要是删除、废纸篓、快速格式化或文件系统问题,那么在进行任何会向磁盘写入数据的操作之前,值得先试试恢复软件。这个办法对我来说不止一次奏效。
在尝试“修复”任何东西之前,先对整个物理磁盘制作一个完整的逐字节镜像。不是丢失的卷,不只是可见的分区,而是整个设备。被删除的分区通常是分区映射问题,而那些试图重建或“修复”该映射的工具可能会将更改写回磁盘。这可能有效,但当文件很重要时,这不是我会采取的第一步。
我同意前面关于停止使用该硬盘的观点,但我会对直接扫描原始磁盘更加谨慎。恢复扫描大多是只读的,但它们可能需要数小时,而且会给状态不佳的硬盘带来压力。如果磁盘是健康的,就把它镜像到另一个有足够空间的硬盘上,然后扫描该镜像。如果磁盘表现异常,就使用能够更好处理读取错误的工具,或者停止操作并考虑送到实验室。
Disk Drill 可能适合浏览可恢复的文件,特别是如果你想要图形界面和预览功能,但不要让任何恢复应用把结果保存回同一块 Mac 硬盘。只能保存到单独的磁盘上。另外,暂时避免使用“磁盘工具”的“急救”,除非你已经有了镜像。急救的目的是修复文件系统,而不是保全证据,而且在 HFS/HFS+ 分区损坏或丢失的情况下,它可能会让情况变得更加混乱。
已删除的分区条目比被重新格式化并再次使用的硬盘情况要好得多,但也更容易因为在“磁盘工具”中出于“好心”重新创建分区而弄糟。如果你在同一块空白空间中新建一个 HFS 分区,macOS 可能会在那里写入新的文件系统结构,而这可能覆盖旧的目录或卷标头区域。所以,不要只是为了看看它是否能挂载,就创建一个替代分区。
我同意 @suenodelbosque 先为整个设备制作镜像。之后,更安全的做法是检查镜像中旧分区的起始位置和大小。像 TestDisk 这样的工具有时可以找到丢失的 HFS/HFS+ 分区条目并重建分区映射,但我不会让它对原始磁盘写入更改。如果它找到一个看起来可信的 HFS 卷,请记下扇区编号,保存截图或日志,并在克隆盘或镜像上操作。这里精确的边界非常重要。
如果你的目标是提取文件而不是恢复分区本身,那么 Disk Drill 或类似的恢复软件是可以的。只是要预期文件夹名称和结构可能取决于 HFS 目录还保留得有多完整。如果目录已损坏,你可能只能得到原始恢复的文件,文件名更差,或者缺少文件夹。即便如此,这仍然比拿原始硬盘去冒险运行“急救”或重新分区要好。最稳妥的顺序是:停止使用它,制作镜像,扫描镜像,恢复到单独的磁盘,然后只有在重要文件已经安全保存到别处之后,再考虑修复或重建。
当 macOS 提示修复磁盘时,不要点击“初始化”“抹掉”或“分区”。那个提示不是恢复工具。它通常只是表示 macOS 看到了设备,但没有看到可挂载的卷,而让它去“设置”磁盘可能会在你需要的证据上写入新的分区映射。
这里缺少的细节是,这原本是普通的 HFS/HFS+ 分区,还是包裹在 CoreStorage/FileVault 里的内容。如果涉及加密,恢复顺序会稍有不同。你仍然要先为整个设备制作镜像,但还需要密码或恢复密钥,而且文件雕刻扫描可能不会给你任何有用结果,因为加密数据看起来就像随机噪声。在这种情况下,找到旧分区/容器边界比运行通用文件扫描更重要。
在做任何复杂操作之前,我会先记几项只读信息:当前 diskutil list 显示什么、物理磁盘标识符、报告的磁盘大小,以及它是 GPT 还是 Apple Partition Map。先不要根据这些记录去“修复”。这些只是为了防止你搞混哪块磁盘是哪块,尤其是在你接入另一块硬盘来制作镜像时。人们常常因为把空白目标盘克隆覆盖到源盘上,让糟糕的情况变得更糟。必要的话就给硬盘贴标签。
我基本同意上面先做镜像的建议,但我会谨慎使用“扫描”这个词。扫描镜像是安全的。扫描原盘在健康磁盘上通常也没问题,但这仍然意味着数小时的读取,如果硬盘老化或状态不稳定,这可能就是“还能恢复”和“现在每五分钟就断开一次”之间的区别。如果文件很有价值,就用一种能在跳过坏区域的同时制作克隆,并且之后再回头处理这些区域的工具。普通的 Finder 复制或磁盘工具镜像,在磁盘有读取错误时容错性更差。
如果你想要图形界面和预览功能,Disk Drill 是个还算合理的选择,尤其是在你已经有镜像之后。我会把它当作文件恢复工具,而不是改写分区表的第一权威。如果它能完整找到你的文件夹,就把它们恢复到另一块硬盘上,并把这当作成功。恢复已删除分区并让它重新挂载当然很好,但那是次要目标。最安全的最佳结果,是在任何人尝试让原始磁盘重新看起来正常之前,先把重要文件复制到别的地方。


