我有 FAT 格式的 USB 驱动器,可能存在文件系统级问题。当我将驱动器插入 Windows 系统时,它似乎更改了驱动器上的某些内容,从而消除了问题。这使得无法分析问题。
如何才能检查 USB 驱动器而不让操作系统默默更改内容?我希望能够访问磁盘文件并读取/写入磁盘映像。
问题发生在 Windows 10 上,但也许任何 Windows 解决方案都无法起作用?
答案1
不知怎的,我怀疑 Windows 是否会对允许临时挂载的文件系统进行修复,并且会忘记直到下次启动。我断言,如果 Windows 进行文件系统修复,它将永久写入驱动器。
无论如何,回答这个问题:
- 使用例如 ddrescue 创建逐扇区磁盘映像。在安装文件系统方面,Linux 的“侵入性”远低于 Windows。
- 当 USB 驱动器位于写入阻止程序后面时,也可以从 Windows 中获取图像。
- 如果需要从 Windows 进行分析,请使用 OFSMount 等工具安装磁盘映像,或者使用任何磁盘编辑器或文件恢复工具。
这是使用 ddrescue 的众多指南之一:https://www.data-medics.com/forum/threads/how-to-clone-a-hard-drive-with-bad-sectors-using-ddrescue.133/
这是一个免费工具,您可以用它在 Windows 中挂载 dd 类型的磁盘映像:https://www.osforensics.com/tools/mount-disk-images.html
该工具的免费版本包含功能齐全的磁盘编辑器,其中有许多磁盘和文件系统结构模板:https://dmde.com/
HxD 是一款出色的免费文件和磁盘编辑器:https://mh-nexus.de/en/hxd/。您可以使用它对包含修改的磁盘映像和不包含修改的磁盘映像进行逐字节比较。
硬件和软件写入阻止程序:https://forensics.wiki/write_blockers/
编辑:我将添加另一个 Windows 建议,该建议应该/可能阻止 Windows 执行修复:告诉它不要安装外部驱动器。
- 打开提升的命令提示符
- 键入 mountvol /n 以禁用驱动器自动挂载
- 键入 mountvol /r 以清除自动安装期间分配的以前的驱动器号
- 要在某个时候再次启用自动挂载,请输入 mountvol /e
发出命令后,重新启动。
此方法(或 DiskPart 等效程序)的问题在于它有时似乎没有效果。
答案2
Windows 会自动执行一项更正,即对chkdsk
未正确卸载的磁盘进行更正。
即使chkdsk
由于某种原因或由于人工干预而没有运行,当计算机稍后正确卸载磁盘时,问题也会得到纠正。
我认为上次使用时磁盘没有正确卸载。出于某种原因,嵌入式系统无法纠正错误,或者它显示了一条从未处理过的错误消息,这就是问题所在。
当稍后将磁盘安装到 PC 上时,它就被正确卸载了,从而清除了该情况并修复了嵌入式系统的问题。
如果是这个问题,那么正确卸载并弹出将在此嵌入式系统上使用的磁盘就很重要。