MBR 与 fdisk -l 不对应?

MBR 与 fdisk -l 不对应?

我正在尝试映射显示的内容sudo fdisk -l以及 MBR 中写入的内容。然而它们似乎有所不同。

显示什么fdisk

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048   490612735   245305344   83  Linux
/dev/sda2       490614782   976771071   243078145    5  Extended
/dev/sda5       968929280   976771071     3920896   82  Linux swap / Solaris
/dev/sda6       490614784   968929279   239157248   83  Linux

MBR 中的分区表内容如下:

00001be: 8020 2100 83fe ffff 0008 0000 0020 3e1d  . !.......... >.
00001ce: 00fe ffff 05fe ffff fe2f 3e1d 0228 fa1c  ........./>..(..
00001de: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00001ee: 0000 0000 0000 0000 0000 0000 0000 0000  ................

获取 MBR 的步骤是:

  1. sudo dd if=/dev/sda of=~/mbr.file bs=512 count=1获取前 512 字节。
  2. xxd -s 446 -l 64 mbr.file仅打印分区表。

答案1

其他两个分区未显示在 MBR 中的原因是它们基于扩展分区(第二个分区的类型是0x05.

参考:http://en.wikipedia.org/wiki/Partition_type#PID_0Fh

相关内容