如何恢复我 MacBook 上已删除的文件?

我不小心从我的 MacBook 中删除了重要文件,现在在“废纸篓”或最近使用的文件里都找不到它们。其中一些在 Mac 上删除的文件与工作有关,我确实需要帮助,想尽快弄清楚恢复它们的最佳方法,以免它们被永久丢失。

我还是会试试。清空废纸篓会切断最容易的撤销路径,但这并不意味着文件会当场从硬盘上消失。很多时候,数据会一直留在那里,直到 macOS 把它覆盖掉。问题在于 SSD。在较新的 Mac 上,被删除的块通常会很快被清除,比我多年前用过的老式机械硬盘快得多。

第一步,停止使用这台 Mac。我是认真的。不要下载东西,不要安装应用,不要编辑大文件,也不要因为想着 反正为什么不 就去运行 macOS 更新。每一次写入都会降低你的成功几率。

我会先检查什么

在急着用恢复软件处理之前,我会先检查 macOS 里的内置功能。

1. 时间机器

如果在删除之前已开启时间机器,这通常是最稳妥的修复方法。

  1. 打开该文件原来所在的文件夹。
  2. 启动时间机器。
  3. 返回到删除之前的某个备份。
  4. 选中文件并恢复它。

如果此方法有效,效果通常很好。你一般可以直接找回原始文件名、文件夹和元数据,之后也不需要做奇怪的清理。

2. APFS 快照

这一项经常被忽略。即使你从未连接过 Time Machine 硬盘,macOS 也常常会在更新和某些系统更改之前创建本地 APFS 快照。我见过有人原以为自己完全没有备份,结果还是从这里恢复了文件。

打开“磁盘工具”,点按你的系统卷,然后查看可用的快照。如果你发现一个删除之前的快照,就挂载它,然后手动把丢失的文件复制出来。

有点麻烦,但值得检查一下。

3. 恢复软件

如果备份和快照都没有结果,我会转而使用扫描软件。Disk Drill通常是我开始使用的工具。它将几种扫描类型整合到一个工作流程中,支持当前的 macOS 版本,并且让你在恢复前预览文件。对我来说,预览非常重要。如果文件可以在预览中打开,通常成功恢复的几率会更高。

这里有几条规则,这些都是我吃过亏后总结出来的:

  1. 如果你有其他硬盘,请将恢复应用安装到另一块硬盘上。
  2. 将文件恢复到不同的硬盘,而不是恢复回你正在扫描的同一个 Mac 卷宗。
  3. 仔细检查预览。能够正常预览的文件,通常更有可能以可用状态成功恢复。

4. 我何时会停止自己尝试并使用恢复实验室

对于普通的误删,我通常不会直接去找实验室。我会把这种选择留给以下情况:

  1. 这些文件足够重要,以至于一次失败的自行尝试都显得风险太大。
  2. 硬盘表现异常,比如随机断开、读取错误、发出奇怪噪音,或者在 macOS 中根本不显示。
  3. Mac 遭受了液体损坏、电源损坏,或其他某种冲击。
  4. 恢复工具无法完成扫描,或者根本无法读取硬盘。

一个靠谱的实验室会有你在家里不具备的工具和方法。不好的一面是价格。可能要几百美元,也可能高得多。我见过不少人很快就被这点吓到了。

人们常常搞错的部分

并不存在什么固定的倒计时,比如给你三天、两周之类的。真正重要的是,被删除的块是否已经被覆盖,或者被 TRIM 清除了。所以通常恢复效果最好的人,往往是那些立刻停止使用 Mac,然后马上检查备份或立刻开始扫描的人。

如果这是我的机器,我会按这个顺序来:先 Time Machine,然后 APFS 快照,最后再做恢复扫描。我见过的大多数成功的 Mac 恢复案例,最终都落在这三条路径中的其中一条。

如果废纸篓是空的,我会先检查一件很多人会跳过的事:云同步历史记录。

如果你的文档存放在 iCloud Drive、Dropbox、OneDrive 或 Google Drive 中,请登录网页版并在那里检查已删除文件。大多数服务会将已删除项目保留 15 到 30 天。iCloud Drive 数据恢复是 Mac 上较快的修复方法之一,因为即使 Finder 里什么都没有显示,文件也可能仍然存在于 Apple 的服务器上。

对于大多数人来说,我对 @mikeappsreviewer 把快照作为首要手动检查项这点稍微有些不同意见。它们确实有帮助,但对于工作文档,我会先查看应用级恢复。Word、Excel、Pages 和 Adobe 应用通常会保留自动恢复或临时副本。搜索这些文件夹:

~/Library/Containers
~/Library/Application Support
~/Library/Autosave Information
/tmp

另外,打开你使用过的应用,检查“文件”、“打开最近使用”、“恢复未保存内容”或“版本历史记录”。很多人总是会忽略这一点。

如果 Spotlight 表现异常,可以在 Terminal 中强制直接搜索:
mdfind ‘filename’
find ~/ -name ‘part_of_filename’ 2>/dev/null

如果文件在备份、云端和应用恢复中都找不到,那么是的,使用 Disk Drill。它是较好的 Mac 文件恢复工具之一,因为你可以在恢复前预览,这样能节省时间。请恢复到外置驱动器,而不是内部 SSD。这一点非常重要。

如果想看一个快速说明,这个Mac 文件恢复工具视频指南很容易快速浏览。

我会使用的快速顺序:

  1. 云端已删除文件。
  2. 应用自动保存文件夹。
  3. Terminal 搜索。
  4. Disk Drill 扫描。
  5. 如果驱动器有错误或无法挂载,就找专业实验室。

如果这些是工作文件,在你尝试这些方法之前,先不要再用这台 Mac 做任何其他事情。

我想补充一下 @mikeappsreviewer@andarilhonoturno 所说的内容:检查这些文件是否只是被移动了,而不是被删除了。听起来有点傻,但在 Mac 上这种情况经常发生,比如通过拖放被移到了桌面、下载文件夹,或某个应用容器文件夹里。在 Finder 中,点击 文件 > 查找,并将搜索范围切换为“这台 Mac”,然后按“修改日期”和“种类”排序。我见过很多“丢失”的文档其实只是放错了地方。

另外,如果你使用 Pages、Numbers、Keynote 或 Office,看看是否有文件版本。在 macOS 上,有些应用会将文档状态单独保存,而不仅仅是那个显眼的文件本身。如果你找到了较旧的副本,右键点击该文档并检查是否可以浏览版本。这和自动保存不完全一样,是稍微不同的思路。

如果这些是工作文档,我还会检查你的电子邮件附件以及 Slack/Teams 的下载内容。很多人都是通过这种方式重新找回“丢失”的文件。

如果这些方法都没有结果,那就用 Disk Drill,并尽可能以只读方式扫描硬盘,然后恢复到外部磁盘。我对把 Terminal 搜索列为最优先事项略有不同意见,除非你记得文件名的一部分。否则这可能会浪费时间。

也可以看看这个:关于从 MacBook 恢复已删除文件的 Reddit 讨论

@andarilhonoturno@espritlibre@mikeappsreviewer 漏掉了一个角度:通过 macOS 文稿版本控制检查应用自身的“还原”系统。如果你手头还有该文件的旧副本,打开它并使用“文件”>“恢复到”>“浏览所有版本”。即使这个“已删除”的项目实际上是被替换或覆盖的文稿,这也可能恢复其中的内容。

我还会检查这两个大家容易忘记的位置:

  1. ~/Library/Mobile Documents/
    有时与 iCloud 相关的文件仍会缓存在这里,即使 Finder 看起来是空的。

  2. ~/Library/Group Containers/
    Office 应用和一些 Adobe 工具会把可恢复的数据片段存放在那里。

我对把快照作为每个人的高优先级检查项这点有一点不同意见。它当然有用,但在较新的 Mac 上,我通常更关心文件是否被覆盖、替换或未同步,而不是被彻底删除。

如果你要开始扫描,Disk Drill 是 Mac 上一个可靠的选择。

优点:

  • 预览支持很好
  • 界面简单
  • 能找到很多文稿类型
  • 对外置硬盘也很有效

缺点:

  • 深度扫描可能需要很长时间
  • 恢复质量很大程度上取决于 SSD TRIM
  • 想获得最佳结果,通常还需要另一块硬盘来保存恢复出的文件

另外也值得检查一下你的工作系统是否有 MDM 或公司的备份工具在后台静默运行。很多受管理的 Mac 会在用户没有意识到的情况下备份“桌面”和“文稿”。