我的 ExFAT 分区大约有 1TB,chkdsk 大约需要 10 小时才能检查并清除脏位标志。从来没有出现过错误。这是由于驱动器以不安全的方式断开连接造成的(它在虚拟机中使用,有时会以导致这种情况的方式关闭)。但我需要有 10 小时等待的替代方案。我将尽快将数据迁移到 NTFS,希望能避免这个问题。
答案1
基本上,因为 exFAT 脏位位于 VBR 的十进制偏移量 106 中,而且它是一个位,而不是一个字节。幸运的是,包括字节 106(6a) 的标志未包含在 VBR 校验和的计算中。您只需使用十六进制编辑器将该脏位清零即可。有关 VBR 布局和滞后的详细信息,请参阅内部信息https://www.sans.org/reading-room/whitepapers/forensics/reverse-engineering-microsoft-exfat-file-system-33274#page=25
还有一个博客:rshullic.wordpress.com
答案2
有人为 MacOS 编写了一个实用程序来清除该位(以构建运行make
):
https://github.com/zzh8829/exfat_clean
仓库是通过以下方式找到的这邮政。
另外还有一个特定于 MacOS 的问题:在 Mac OSX 中禁用脏卷安装时的自动 fsck_exfat但这个答案似乎对 Mojave 不起作用。
答案3
轻松解决 ExFat 问题:
“Chkdsk 崩溃 - 错误 0x80071AC3 & 766f6c756d652e63 3f1”
就我的情况而言:运行 Windows 7 的 4GB WD 外置硬盘:
我有一个 WD 外置硬盘,在 USB 端口断开连接失败后,它被标记为脏,只允许读取但不允许写入,当我在 Windows 7 中执行 chkdsk 时,chkdsk 崩溃并消失。经过几天搜索信息后,我发现了一个相当简单的解决方案,即安装 Windows 修补程序(适用于 Windows 7 和 Windows 8 的 KB2843376),它使 chkdsk 不会崩溃,并且可以擦除脏磁盘标记并正常工作。
您可以找到修补程序这里。
我希望它对你也同样有效。
答案4
exFAT 偏移量为6a
。在 HxD 上,按CTRL+G并输入0x6a
,这将带您找到需要归零的准确字节。