NTFS MFT 数据运行

NTFS MFT datarun

我正在尝试解析 MFT 记录中的数据 运行,并将结果与​​ Active Disk Editor 进行比较。数据运行如下:

... 42 0F 01 FD 83 90 D9 0C(第二个属性从这里开始)

如果我没理解错的话:应该是这样解析的:

但是,在活动磁盘编辑器中:

谁能告诉我我做错了什么?

经过一些额外的研究,我无意中读到了有关 NTFS 修复的信息。对于以后可能遇到同样问题的朋友,思路如下:

  • 更新序列号 (USN) 是一个 2 字节的实体,它会覆盖每个已使用扇区中的最后两个 字节。这样做是为了验证目的。

  • 更新序列数组(美国)包含每个扇区末尾覆盖的 2 个字节的数组。

在不考虑 USN 和 USA 的情况下读取结构是有问题的。它可能会弄乱文件名、数据 运行s 等。我在以下位置遇到过此信息: https://www.taksati.org/ntfs-fix-ups/

长话短说,当我考虑到这个差异时,第一个集群位置变成了:

0x009083FD

由于数据 运行 列表信息变为:42 0F 01 FD 83 90 00 00

你的评论有点问题: 覆盖每个已用扇区中的最后两个 扇区 扇区应该是字节。

NTFS新手的通病。 所有记录(index/FR/RCRC)必须在USN处理后读取。