NTFS CRC窗口抱怨的是什么,在哪里?

时间:2012-03-12 06:19:17

标签: windows file filesystems ntfs crc

我试图找到a question of mine的答案,涉及在Windows的API抱怨“CRC错误”时恢复文件。我知道这是因为一个坏块。

但我的理论是:

  • 如果我禁用SMART,因此ECC,我应该能够读取“原始数据”,而不应用ECC,因此在文件的流中有一个带有“不确定数据”的块(而不是应用了ECC的空白块) )。
  • 此数据不应与其NTFS'CRC匹配,而其他文件的数据应与其匹配。
  • 我应该能够通过用“不确定数据”逐个翻转一个块来强制整个文件的“正确数据”(我怀疑腐败会影响坏块中的一两个,而不是整个块,因此它落在32位校验和和暴力的可恢复性阈值内。)

现在,问题是,我不知道这个CRC是什么,或者它在哪里。我用Google搜索了很多,但我找不到它。我想这是一个NTFS功能,据我所知,NTFS没有完整的官方文档,我真的不喜欢在NTFS-3G的C ++源代码中寻找这个的想法。

所以:我想制作一个小实用程序或脚本来恢复这种情况下的文件。答案告诉我在哪里获得此CRC及其使用的算法将被接受。

另外:我怀疑CRC是针对分配单元而不是整个文件。也许它在MFT中?

1 个答案:

答案 0 :(得分:6)

您看到的CRC错误不是来自NTFS。它们来自设备驱动程序。