那块硬盘、那份目录,和一次完整的恢复过程

3 月 13 日凌晨两点,我把那块 2.5 英寸移动硬盘从抽屉最里面拿出来,接上读卡器,系统只认出盘符、不显示容量,指示灯闪了四下之后熄了。这个状态我见过,通常意味着分区表还在,但主引导记录被写坏了。我没有急着点格式化,而是先拿 dd 做了一份整盘镜像,3276MB,跑完大概用了十四分钟。

我之所以这么紧张,是因为盘里有一个 1998 年建立的三级图库索引目录,一共 2147 个条目,按年份、月份、批次三层归档,缺一条就要整段对不上号。去年十一月,王工在电话里跟我说过一句很实在的话:“索引比文件本身难恢复,文件丢了还能重下,索引丢了等于整座图书馆没有目录。”这句话我记到现在。

镜像做完后我先不碰原盘。把镜像载入虚拟机,用十六进制编辑器定位到偏移 8365 处,目录表的前 16 个字节是 0x47 0x4C 0x52 0x59,正是我当年写进去的标记。接着我写了一个不到 200 行的 Python 脚本,按固定记录长度 64 字节逐条读取,读到末尾会有一个两字节的终止符,靠它判断目录表在哪里结束。2147 条记录,脚本跑了不到九秒。

索引恢复这行当里,最难的不是技术,是克制——看到「是否格式化」那个对话框的时候,手别动,先去镜像。 —— 王工,2025 年 11 月 9 日于一次跨城电话里

真正费时间的是校验。我给恢复出来的每个条目跑了 CRC32,前 2144 条全部通过,剩下 3 条校验失败。看偏移,三条挨得很近,都在同一条坏道上。我没有直接放弃,而是把早前做过的第二份镜像(2019 年备份)挂上,按相邻扇区推算位置,把那三条补了回来。补完之后我又跑了一遍完整校验,错误数为零。此时窗外已经有点亮了,我看了一眼时间,五点四十一分。

写到这里,我想说一句可能有人不爱听的:资料恢复这件事,工具只占三成,剩下七成是纪律。很多人在盘还能转的时候第一反应是插上电脑逐层点开找文件,这个动作本身就会写入临时文件,把本来还能救的内容彻底盖掉。我见过太多这样的例子,包括我自己 2014 年丢的那一批照片。所以现在我的流程永远是镜像先行、原盘静置,除非镜像本身出错,否则不会再碰原盘一下。

如果你在做的也是类似的事,站里之前整理过的几条路径可以按需翻一翻,包括对 新澳正版图库资料 的编号对照,以及 6699浏览器app更新包 里模块入口的变化记录。这些条目不是直接答案,但能少走一些弯路。恢复出来的目录我已经导出成 CSV,放在离线介质里,两份,不同城市。