如何在不丢失数据的情况下从损坏的U盘中恢复文件?

我的U盘突然打不开了,现在插入时还会报错。里面有重要的工作文档和个人照片,我从未备份过,现在我正试图在不丢失数据的情况下从损坏的USB驱动器中恢复文件。我需要安全的步骤或软件推荐,而且不能让问题变得更糟。

我不止一次遇到过这种情况,而 Windows 一开始弹出的那个界面通常看起来比实际情况更糟。我遇到过 U 盘显示为 RAW、提示格式化,或者拒绝打开,但最后还是把大部分文件取出来了。

第一件事,不要点格式化。先也别运行修复工具。我知道 Windows 一直提示的时候很容易忍不住。如果文件很重要,先把数据弄出来。U 盘之后再修。顺序反过来坑过不少人,我自己也中过招。

造成这种问题的原因很重要。如果这是因为拔盘太快、传输中断、文件系统损坏、恶意软件,或者某个随机的软件故障引起的,我还是会先自己尝试恢复。如果 USB 插头弯了、U 盘发烫、每隔几秒就断开连接、完全不显示,或者文件无法替代,那我就会停在这一步,直接找专业数据恢复机构。到了这个程度,自己继续折腾就是在赌。

如果设备还能被检测到,而你想走我会选的路线,我会先用 Disk Drill

我在处理损坏的 USB 存储介质时喜欢它的一点很简单:它不需要 Windows 先把文件系统正常读出来。就算这个盘在资源管理器里看起来已经坏了,Disk Drill 依然能扫描设备,并从受损结构底层把数据拉出来。按我的测试,它在保留文件夹名称和目录结构方面,比其他几个工具做得更好。预览功能也很有帮助,因为我可不想恢复 40 GB 的垃圾后才发现一半文件已经坏了。

我最先会用的功能是 Byte-to-Byte Backup。这比很多人想的更重要。有问题的 U 盘往往会在你抢救它的时候变得更糟。我见过有的还能工作一小时,下一次重新连接就直接消失。如果你早点做镜像,之后就能基于副本操作,而不是一遍又一遍地折腾原来的 U 盘。

我会按这个顺序来:

  1. 在电脑上安装 Disk Drill。不要装到损坏的 U 盘上。
  2. 插入损坏的 U 盘。
  3. 打开 Disk Drill,进入 Byte-to-Byte Backup。
  4. 选择这个 U 盘,并为它创建完整镜像。
  5. 镜像完成后,在 Disk Drill 中挂载或附加该镜像。
  6. 扫描镜像,查找可恢复的文件。
  7. 预览扫描结果,确认你的文件还能正常打开。
  8. 把恢复出的内容保存到另一块驱动器。

在这里,基于镜像操作是更安全的做法。一旦备份存在,恢复工作就不再取决于原始闪存盘是否还愿意再撑十分钟。

文件安全之后,我才会去折腾这个 U 盘本身:

  1. 运行 Windows 错误检查或 CHKDSK。
  2. 如果 Windows 显示不对,给它分配一个新的驱动器号。
  3. 如果识别时有时无,重新安装 USB 驱动程序。
  4. 格式化它,然后复制几个无关紧要的文件过去测试。

如果格式化之后损坏问题又出现、文件再次消失、写入开始失败,或者这个 U 盘在正常使用中还是持续表现异常,我会直接让它退役。闪存盘确实会老化。一旦某个盘开始反复出现故障迹象,我就不会再信任它了。这一点我是用很烦人的方式学到的。

如果该U盘仍然在磁盘管理中显示,我会先尝试一种比修复工具更安全的初步方法。我同意 @mikeappsreviewer 提到的一个重点,不要先格式化它。不过我对把 CHKDSK 作为早期操作这一点有些不同意见。在损坏的闪存介质上,CHKDSK 有时会通过删除你原本想恢复的条目来“修复”文件系统。对硬盘很好,对你的照片却很糟。

我会这样做:

  1. 在另一个 USB 端口和另一台电脑上测试它。
  2. 检查磁盘管理。如果显示的容量接近正常,恢复的可能性会更高。
  3. 先使用只读恢复工具。Disk Drill 在这里是个可靠的选择,因为即使资源管理器报错,它也经常能读取损坏的 USB 驱动器。
  4. 将文件恢复到电脑内部硬盘,绝不要恢复回U盘。
  5. 恢复完成后,擦除并重新格式化 USB。如果错误再次出现,就把它扔掉。不是开玩笑,闪存盘往往会悄无声息地损坏,然后突然彻底失效。

如果设备连接后又断开、显示 0 字节,或者发热,别再折腾它了。这更像是硬件故障。

另外,如果你想要一个快速的可视化演示,这个会有帮助:
U盘数据恢复视频教程

还有一点很多人会忽略。如果这个U盘显示为 RAW,不安全移除后出现 exFAT 损坏是很常见的。通常仍然可以恢复,但每多一次写入,成功率都会稍微降低。

我还想补充一点,@mikeappsreviewer@reveurdenuit 都没有真正充分强调:先检查问题到底是 USB 外置盒逻辑,还是仅仅是分区信息出了问题。很多人会直接开始扫描,但如果 Windows 显示设备容量不对、出现奇怪的未分配空间,或者根本没有分区表,那么在你花几个小时到处点来点去之前,这些信息就已经能说明很多问题了。

我会这样做:

  • 打开 磁盘管理,查看:
    • 显示的容量是否正确?
    • 是否显示为 RAW、未分配,或无介质?
  • 如果显示 无介质,软件恢复大概率帮不上太多忙。这已经属于控制器级故障的范畴了。
  • 如果显示的容量正确,但分区信息损坏,那么成功恢复的几率就大得多。

另外,我不太赞成做太多反复重连测试。人们总是说 试 10 次、换 3 台笔记本电脑试试,没错,有时候这确实有帮助,但对于一块快要坏掉的闪存盘来说,每一次挂载都可能成为彻底报废的那一次。最多快速检查两次,然后就转入恢复流程。

如果 U 盘还能被识别到,说明它还有一定可读性,我会用 Disk Drill 来做实际的文件恢复,因为它对受损的 USB 文件系统处理得相当不错,而且在把一堆没用的文件导出到你的电脑之前,还能先预览哪些内容是可以救回来的。如果你想更清楚地了解它的工作方式,这个Disk Drill 损坏 USB 驱动器数据恢复演示值得一看。

还有一点很多人会忘记:禁用任何可能自动向驱动器写入数据的功能。杀毒软件、索引服务,甚至是 Windows 的 修复 提示都算。对于正在故障中的 U 盘来说,哪怕极小的写入都可能产生影响。

如果你的文件真的无可替代,那么一旦它开始频繁掉线、发烫,或者显示 0 字节,我会坦白建议你直接放弃自己动手。这往往就是人们把原本还能恢复的一团糟,变成彻底报废 U 盘的时候。

我会把这归结为一个其他人只是稍微提到的关键问题:损坏在逻辑层面,还是闪存本身正在失效? @reveurdenuit@kakeru@mikeappsreviewer 都对,先不要格式化,但我对在较低层检查驱动器行为之前做太多测试这件事没那么积极。

有几件值得尝试、且不同于通常先扫描建议的做法:

  • 插入后立刻在 Windows 的系统日志中检查事件查看器。如果你看到反复出现的 I/O 或控制器重置错误,这往往意味着是硬件不稳定,而不只是文件系统损坏。
  • 在 Linux 上,连接后试试 lsblkdmesg。有时 Linux 会挂载,或者至少能识别出 Windows 拒绝打开的 U 盘。
  • 如果文件非常重要,在正常恢复之前,先使用能够通过重试进行克隆并智能跳过坏扇区的工具。这样可能比直接扫描正在使用的 U 盘更安全。

如果驱动器仍然报告正常容量并且保持连接,那么是的,Disk Drill 是文件恢复的合理选择。

Disk Drill 的优点

  • 擅长从损坏或 RAW 的 USB 驱动器中提取文件
  • 预览功能很有用,这样你可以在恢复前验证文档和照片
  • 界面比某些取证风格的工具更容易使用
  • 与非常基础的恢复应用相比,更有助于保留文件夹结构

Disk Drill 的缺点

  • 深度扫描可能返回大量被重命名的文件,并丢失原始路径
  • 如果控制器正在失效或设备显示 0 字节,它也无能为力
  • 免费恢复限制可能会因平台不同而令人烦躁
  • 如果你先跳过镜像制作,对状态不佳的驱动器进行高强度扫描仍然会给它带来压力

我与一般建议的细微分歧在于:如果 U 盘会随机断开连接,我会跳过反复尝试面向普通消费者的恢复方式,直接去创建镜像或送去实验室处理。在那个阶段,每一次额外读取的重要性都比你使用哪款应用更高。