一次移动硬盘故障踩到了三家系统的坑

194 天前
 phoulx

硬盘是 SanDisk 1TB 移动 SSD ,一整块 exFAT 分区,在 Ubuntu 24.04 Gnome 下通过 nautilus 拷贝数据(文件数量是一万多,将近 100GB )到挂载的 NVMe SSD 一个 NTFS 分区,进度不到 1/3 时死机了——是完全死掉,不仅图形界面卡住,TTY 也切换不了,鼠标键盘无响应,甚至传说中的 REISUB 大法(通过键盘 SysRq 组合键发送系统中断)也不起作用。等了约一小时没有办法,强行断电重启。

重启後,移动 SSD 仍可读,但 NTFS 分区提示错误无法挂载,便切到 Windows 11 尝试修复——这个倒是常有的,其他系统遇到 NTFS 有一点问题就得用 Windows 磁盘工具修复。点了检查错误并修复,NTFS 分区算是好了。

再插入移动 SSD ,也是可以正常读取的,不过 Windows 弹出通知说这个盘可能有问题需要修复。出于信任(毕竟 exFAT 也是微软研发了),按提示检查并修复,时间不长,一会儿就告诉我问题已修复,但转眼一看,坏了——发现盘里存上述数据的文件夹(准确地说是其最上层目录)整个消失了!

此时磁盘占用还是正常的,根目录的其他文件夹也还在,计算机常识告诉我文件实际没消失,衹是目录结构损坏,理论上应该能找回来。返回 Ubuntu 挂载,发现原文件夹确实消失了,但多出了一个 FOUND.000 文件夹,里面似乎是我的数据,但是文件名均为 FILExxxx.CHK ( xxxx 为数字),元数据不全,而且大小随机变化(比如原文件几 M 可能变成几百 M ),并且数量少了很多,总的来说可用性很低。

本来还想插到 Mac 上试试,幸好没有(下面讲原因)。

通过正常办法是找不回了,衹好考虑数据恢复软件。首先想到的是梨厂的 Recuva (多年前用来恢复过 U 盘,效果还可以),不过这次可能是硬盘容量大,扫描很慢,不管它等了一夜,窗口又消失了,再试一次还是如此。

又试了 DiskGenius ,调整选项确实能扫出来丢失的文件夹,虽然文件有重复,并且不确定是不是全部都在(至少有大部分),还有非常多「孤立的文件」(也是几乎不可用),但别无它法,衹能将所看到的备份出来。

这时,能做的就差不多了,毕竟不太可能弄明白 exFAT 分配表细节再手动修复。

再插到 Mac 上,能看到的文件没啥变化,不过非常糟心的事是 Finder 对非苹果文件系统分区会自动写入隐藏文件,除了众所周知的.DS_Store ,还会对应其打开的文件夹内每个文件新写一个以._开头的 4KB 隐藏文件——真是设计的败笔。这事在正常的硬盘倒也没那么坏,但对于要恢复数据的盘来说却是致命的,因为新写入的隐藏文件很可能会覆盖要找回的数据,导致原数据被破坏而无法恢复。之後又用 DiskGenius 扫了一下,扫到的文件确实变少了。

经验小结:

  1. exFAT 尽量少用,这次丢数据最重要的原因可能还是这个分区格式,没有日志,分区表无备份,想想也不靠谱;
  2. 在 Linux 图形桌面下操作大批文件拷贝要谨慎,做好 Crash 的心理准备...
  3. Windows 的磁盘检查在能正常读写的情况下慎点(至少对于 exFAT 是这样),先备份再检查修复;
  4. 要恢复数据的磁盘不要放到 Mac 下读取。
1072 次点击
所在节点    分享发现
3 条回复
NevadaLi
194 天前
1. linux 使用的磁盘一般 xfs ,ext4 ,btrfs ,不会上 exfat/ntfs
2. 批量文件拷贝不会用 GUI ,并且选择 rsync
3. 要恢复数据的磁盘,按照常规流程,应该先以硬件只读方式插上数据拷贝机,然后按扇区复制数据到新磁盘,之后挂载新磁盘进行恢复,全程不动原盘。
phoulx
193 天前
@NevadaLi 谢谢建议~
因为多系统在用,选了 exFAT ,不过目前看 NTSF 可能更合适,三家都有内置支持;
只读拷贝到新盘再恢复肯定更好,没有这个条件....
cslive
193 天前
硬盘发热,先掉速,后卡死,散热做好就行

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1048626

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX