通过 hexdump 和 fdisk 完成时,闪存驱动器前 512 字节的转储不同
我首先使用将 USB 闪存驱动器的前 512 字节清零
dd if=/dev/zero of=/dev/sdb bs=512 count=1
,然后我发现 fdisk 的输出
hexdump -n 512 /dev/sdb
(分区表的原始转储)和 fdisk 中的输出是不同的。
具体来说,hexdump 显示所有字节实际上都已清零。但是,在 fdisk 中,每次重新启动 fdisk 时,我都会看到第 441-444 个字节具有随机值。此外,最后 2 个字节具有引导签名 AA55。每次重新启动 fdisk 时,此启动签名都不会更改。即使在 fdisk 中,所有其他字节也被清零。
为什么会出现这种差异?
I first zeroed out the first 512 bytes of the USB flash drive using
dd if=/dev/zero of=/dev/sdb bs=512 count=1
Then i saw that the output of
hexdump -n 512 /dev/sdb
and from within fdisk (the raw dump of the partition table) is different.
Specifically, hexdump shows that all bytes are really zeroed out. But, in fdisk I see that the 441-444th bytes have random values each time you restart fdisk. Also, the last 2 bytes have the boot signature AA55. This boot signature doesn't change each time i restart fdisk. All the other bytes are zeroed out even in fdisk.
Why this discrepancy?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
据推测,
fdisk
正在将零块纠正为有效的引导扇区。Presumably
fdisk
is correcting the block of zeroes to be a valid boot sector.