我的 Mac SSD 上的 APFS 宗卷突然无法挂载,而且“磁盘工具”也无法修复它。我需要帮助判断是否可以从 SSD 进行 APFS 数据恢复、哪些工具或步骤最安全,以及如何避免让丢失的文件更难恢复。
在文件恢复之前,我会把这块驱动器当成易损设备来对待。最重要的是要立即停止使用这块 APFS 驱动器。不要往里面保存任何东西,不要在上面安装恢复工具,如果能避免,也不要让 macOS 继续往里面写入数据。已删除的数据可能会在正常使用中被覆盖,一旦发生这种情况,恢复效果就会差很多。
这里驱动器的类型非常关键。
如果这是外置 HDD,或者是一台较老的 Mac,使用的是 APFS 格式化的机械硬盘,那么只要删除的数据还没有被覆盖,恢复成功率通常还是不错的。
如果它是SSD,尤其是 Mac 内部 SSD,那么时间就更敏感了,因为有 TRIM。TRIM 会让 SSD 知道哪些已删除的数据块可以安全清除。一旦这些数据块真的被擦除,恢复软件就无法再把它们重建出来。所以如果文件是从 APFS SSD 上删除的,不要继续使用 Mac 并寄希望于运气好。并且在较新的 macOS 版本中,你通常也无法关闭内部 SSD 的 TRIM,因此最好的做法就是停止使用它并尽快处理。
在开始扫描之前,先检查这些比较简单的恢复方式:
- Time Machine 备份。
- APFS 快照,如果存在的话。
- FileVault 加密。如果驱动器已加密,大多数工具都需要先将其解锁或解密,才能正确扫描。
至于实际恢复,Disk Drill 是我会尝试的工具。与那些只按文件签名搜索的工具相比,它处理 APFS 的方式更实用,因此当文件系统元数据仍然存在时,你有可能找回原始文件名和文件夹结构,而不是得到一堆杂乱无章的文件。
更安全的操作流程大致如下:
- 把 Disk Drill 安装在另一块驱动器上,不要安装在你要恢复数据的那块盘上。
- 连接受影响的 APFS 驱动器。
- 运行完整扫描。
- 使用预览功能检查文件是否真的可以读取。
- 把文件恢复到另一块磁盘。绝对不要把它们恢复回有问题的那块驱动器。
不要跳过预览这一步。它可以帮你节省很多时间,因为在你决定恢复全部内容之前,它会显示这些文件是否大概率仍然完整。
如果驱动器无法挂载、会随机断开连接,或者发出异常噪音,我暂时不会开始运行修复工具。在重要文件复制出来之前,先避免使用 First Aid 或任何其他可能会向磁盘写入更改的工具。先把数据取出来,再考虑修复驱动器。
如果这只是误删文件或文件系统损坏,那么你的恢复机会通常会比驱动器本身正在故障时大得多。
在你还没有磁盘副本之前,不要反复运行“急救”,也不要随意尝试终端里的各种“修复”命令。对于你不在乎的卷宗来说,“急救”可能还行,但对于受损的 APFS 容器,它在尝试修复时可能会更改元数据。如果文件系统已经不稳定,这可能会把原本还能恢复的目录树变成一团糟。
我大体同意 @mikeappsreviewer 关于停止写入的看法,但如果硬盘表现得不稳定,我会对直接扫描原始 SSD 更加谨慎。如果它是外置 SSD,并且能够保持可靠连接,先逐字节制作镜像或克隆到另一块硬盘,然后再扫描镜像。如果它是较新 Mac 的内置 SSD,这可能更困难,因为你不能直接把硬盘拆出来,但思路是一样的:如果可能,从另一台 Mac 或外部系统启动,避免从有问题的卷正常启动,并且只复制/恢复到独立的存储设备。
APFS 恢复是有可能的,但预期应该现实一些。如果 APFS 容器元数据损坏,但 SSD 里仍然有数据,像 Disk Drill 这样的工具可能会找到带有文件名和文件夹的文件。如果 TRIM 已经清除了已删除的块,或者 SSD 控制器正在故障,软件并不能神奇地把那些块带回来。关键区别在于,这是逻辑上的 APFS 问题,还是物理/设备问题。如果 SSD 会消失、显示错误容量、反复断开连接,或者恢复工具在读取它时卡住,那就应该停下来,考虑交给实验室恢复,而不是继续“再试一个应用”。持续对一块正在故障的 SSD 施压,可能会让最后还能读取的区域也变得无法读取。
只有克隆整个 APFS 容器时,克隆才有用,而不只是克隆那个拒绝挂载的卷。APFS 可以在同一个容器中包含多个相关卷,而且有用的元数据可能并不在你预期的位置,因此按文件级复制或“给这一个卷做镜像”的方法,可能会让恢复工具可用的信息更少。我同意上面关于不要反复对 SSD 进行修复操作的谨慎建议,但在花几个小时扫描之前,我会先检查这一点:在“磁盘工具”中,启用“显示所有设备”,看看即使 Data 卷无法挂载,物理磁盘和 APFS 容器是否仍然可见。如果容器可见并且驱动器读取稳定,就把它镜像/克隆到单独的存储设备上,再用类似 Disk Drill 的工具扫描副本。如果只是卷丢失了,但硬件看起来正常,恢复是很有可能的。如果物理 SSD 本身正在消失或显示出荒谬的容量大小,那么软件恢复就不是正确的方向。
不要点击“初始化”、“抹掉”,也不要接受任何提示磁盘无法读取的 macOS 弹窗,除非你已经为它创建了镜像。即使 APFS 容器仍然可以恢复,也可能出现该警告,而把它变成一块“全新”磁盘,会让 Disk Drill 之类的工具只能处理碎片而不是原始结构,这是导致问题恶化的快捷方式。如果 SSD 显示的容量正确,恢复仍有可能;如果不正确,就不要再把它当作软件问题来处理。


