我看到的是这样的:
- 读取文件时 Windows 会抱怨,因为其 CRC 与其计算的 CRC 不匹配。
- 这意味着 NTFS 有一个该文件的 CRC。
- 我希望可以知道或至少猜出有问题的块/扇区。
- 我还希望可以从磁盘读取“错误的数据”。
- 如果将“错误数据”的位逐一反转,我们就能通过蛮力找到正确的数据。
- 因此可以使用统计数据和强力位来匹配 CRC 来恢复文件。
我的问题是,是否有任何软件可以做到这种事情? 不管怎样我都可以做到(如果给出相关指示,我很乐意获取 CRC、驱动器的“错误”数据,知道哪个是有问题的块/扇区,并编写一个脚本来自己对其进行暴力破解)。
顺便说一下,这是一个机械硬盘。
编辑:在使用十六进制编辑器等工具查看后,我注意到坏块显示为垃圾,例如填充了零或最后一个块的副本(这似乎取决于程序),因此为了获取损坏的“真实数据”,我们必须禁用某些硬件校正,这些校正会拒绝读取坏块。我认为这称为 ECC。此外,我预计,如果只有几个位将块标记为“坏”,那么可以使用 Windows 中的某些 32 位校验和来强制匹配。
因此,这个问题可以简单地通过指导我自己来回答。
答案1
不幸的是,我想做的不可能(NTFS 不存储 CRC,硬盘存储)。
不过,我推荐 SpinRite,因为它正在恢复硬盘(速度非常慢,每天只有几 GB,偶尔我会挂载文件系统来查看文件的状态)。
这种方法可能对你有用,也可能没用,所以如果数据价值数千美元,请去专业的硬盘恢复机构。虽然费用非常高,但有时专家能从意想不到的情况下恢复数据。
哦,还有最后一个建议:如果数据价值数千美元,就不要碰这个驱动器。不要再安装它,不要敢从它启动,不要运行chkdsk
,不要做任何事情。这可能会损害驱动器被恢复的机会。
但如果它是一个有歌曲、电影或其他非即时消息的驱动器波尔塔nt 内容,不要错过尽情玩耍的机会!:)