我不小心在 Mac 上永久删除了重要文件,等我意识到时已经太晚了,它们既不在废纸篓里,也没有在 Time Machine 中备份。我需要帮助确认是否还有办法恢复已删除的 Mac 文件,因为其中一些文档和照片真的非常重要,我需要尽快找回它们。
我有一次在 Mac 上遇到过这种情况,清空了废纸篓后,大概难受了十秒钟,然后强迫自己不要再到处乱点。这个部分比大多数人想的更重要。如果你继续像什么都没发生一样使用 Mac,SSD 就会开始重用可用空间,而你恢复成功的几率会迅速下降。
我会按这个顺序来。
1. 先检查 Time Machine 和 iCloud
如果有用,这是最快的办法。不用扫描,也不用猜。
- 前往文件原来所在的文件夹。
- 打开 Time Machine。
- 回到删除之前的某个备份时间点。
- 恢复该文件。
- 然后登录 https://iCloud.com,查看最近删除,尤其是文档和照片。
我会在安装任何其他东西之前先做这个。通过备份恢复只需要几分钟。文件恢复可能要花几个小时,最后还是什么都找不到。
2. 检查 APFS 快照
很多 Mac 用户都会忽略这一点。macOS 通常会自行保留本地 APFS 快照,即使从未完整设置过 Time Machine 也是如此。我见过有人以为自己没有备份,结果却发现还有一个较早的快照留在那里。
打开磁盘工具,选择你的 APFS 数据卷,然后看看是否存在删除之前的快照。如果你找到时间合适的快照,也许可以从中找回丢失的文件。
3. 如果备份无效,就运行恢复软件
如果没有备份,这通常就是下一步。Disk Drill 是较新的 macOS 版本中比较容易上手的选项之一,也包括 Apple Silicon Mac。我以前用过这类工具,而在你已经很紧张、又尽量不想把情况弄得更糟时,是否易用真的很重要。
- 安装软件。
- 选择存放这些文件的驱动器。
- 运行扫描。
- 预览它找到的内容。
- 如果你有其他驱动器,就把文件恢复到那个驱动器上。
如果你想走免费路线,也有 PhotoRec,但它更难用。根据我的经验,它经常会把文件恢复回来,但文件名损坏、文件夹结构也没有了,所以最后你得在一堆混乱内容里慢慢整理。
关于 SSD,有一件事大家常常会忘记
现代 Mac 使用 SSD,而 SSD 会使用 TRIM。一旦 TRIM 清除了已删除的数据块,恢复就会变得困难得多,有时甚至不可能。老式机械硬盘清除痕迹的速度更慢。SSD 就没那么宽容了。所以如果这是五分钟前刚发生的,现在就停止使用这台机器。不要继续浏览,不要继续保存东西,也不要继续来回移动文件。是的,这听起来有点夸张,但确实有帮助。
如果是我遇到这种情况,我会先检查 Time Machine,然后是 iCloud,再看 APFS 快照,之后就直接进行恢复扫描。我见过清空废纸篓后又把已删除文件找回来的情况。结果最好的人,通常都是立刻停止使用 Mac,并且动作很快。
先停止使用这台 Mac。我同意 @mikeappsreviewer 这一点。每次向 SSD 写入数据都会降低恢复成功的几率。
在你花几个小时扫描之前,还可以先检查另外几个地方:
1. 查看应用特定的恢复箱。
Photos、Notes、Pages、Word 以及一些 Adobe 应用都有各自的最近删除区域或临时自动保存文件。对于 Word,请检查以下位置中的 AutoRecovery:
~/Library/Containers/com.microsoft.Word/Data/Library/Preferences/AutoRecovery
2. 搜索临时文件和未保存文件的位置。
打开 Finder,按下 Command + Shift + G,然后检查:
~/Library/Autosave Information
/private/var/folders
~/Library/Containers
按修改日期排序。你可能会找到一个可用的副本。
3. 检查云同步版本历史。
如果文件存放在 Dropbox、OneDrive、Google Drive、Box 或 iCloud Drive 中,请登录网页版应用并恢复较早版本。许多服务在基础套餐中会将已删除文件保留 15 到 30 天,付费套餐则更久。
4. 使用 Terminal 查找隐藏内容。
Spotlight 往往找不到已删除的临时文件。Terminal 在广泛搜索方面更有效:
find ~/Library -iname '*filename*'
mdfind 'kMDItemFSName == 'filename'
这听起来很枯燥,但实际效果往往比人们预期的更好。
5. 如果要扫描,请恢复到外部驱动器。
如果空间紧张,我不太赞同把工具安装在同一台 Mac 上。更好的做法是从另一个卷启动,或使用 Target Disk Mode 或 Share Disk,然后在另一台 Mac 上扫描内部驱动器。如果你使用 Disk Drill,尽可能这样操作。这样可以降低覆盖写入的风险。
另外,如果你想看一个可视化的分步演示,这个视频讲解得还不错:
如何在 Mac 上恢复已删除文件,分步视频指南
如果这些文件是在几周前从 SSD 上删除的,成功几率会大幅下降。如果是今天发生的,你仍然有机会。
我想补充一下 @mikeappsreviewer 和 @caminantenocturno 说的内容:先检查一下这个文件是否真的在本地被删除过。听起来有点傻,但在 macOS 上,很多已删除的东西其实只是被移动、重命名,或者因为应用同步冲突而被替换了。
在进行深度扫描之前,先试试这些:
- 在 Finder 中按**种类**搜索,而不只是文件名
- 只按文件扩展名搜索,例如 `.psd`、`.docx`、`.pages`、`.xlsx`
- 按**上次打开日期**和**修改日期**排序
- 检查 `最近使用`,不是因为它有什么魔法,而是因为别名和已移动的文件有时仍会出现在那里
- 如果它是桌面/文稿文件,请确认 **iCloud 云盘中的桌面与文稿** 没有把它重新放到别处
另外,如果这些文件非常重要,我也不太同意立刻安装恢复软件这种做法。如果数据非常关键,最安全的做法是先关闭 Mac,如果可以的话,把硬盘连接到另一台 Mac 上,然后在外部进行扫描。这样覆盖数据的可能性更小。如果你确实要走软件这条路,**适用于 Mac 的 Disk Drill 文件恢复** 是比较实用的选项之一,因为它可以预览可恢复文件,而且比命令行工具更容易使用。
还要检查应用本身内部的文件版本记录。Pages、Numbers、Keynote 以及一些 Adobe 应用允许你从文件菜单中浏览旧版本。以前我就靠这个找回过文件,因为所谓的删除其实只是被覆盖了。
如果你想进一步了解 Mac 硬盘恢复方案,这个帖子很有用:
从 MacBook 硬盘恢复文件的最佳软件
如果删除发生在一段时间前的 SSD 上,那就要现实一点。TRIM 很残酷。如果是最近删除的,你也许还有机会,但要尽快操作,并立刻停止使用这台机器。
我觉得有一个角度没有被足够强调:检查驱动器是否存在**文件系统损坏**,而不仅仅是文件被删除。如果 APFS 目录在崩溃期间出了问题,文件可能在 Finder 里显示已消失,但在结构上仍然存在。
我想在 @caminantenocturno、@viaggiatoresolare 和 @mikeappsreviewer 所说的基础上补充:
- 从恢复模式对受影响的卷运行**急救**
- 如果文件位于外置硬盘、SD 卡或 USB SSD 中,请先克隆该设备再进行扫描
- 检查**电子邮件附件**、Slack/Teams 上传内容、打印队列以及应用导出文件夹。人们经常会在那里找回最后一次发送的副本
我稍微不同意把急救放到太晚才做。在受损卷上,在修复基本错误之前,恢复工具可能会误读文件树。
如果你确实要使用 **Disk Drill**,优点:预览简单、对 APFS 支持良好、比大量依赖 Terminal 的工具更容易上手。缺点:对启用了 TRIM 的 SSD 并不神奇,深度扫描可能返回大量杂乱结果,而且将它安装到同一个内部驱动器上并不理想。
如果该文件至关重要,而不只是丢了会很麻烦,我会在完成基本检查后停止自行处理,并考虑联系数据恢复实验室。对于现代 Mac SSD,软件恢复有很明显的上限。