linux中的磁盘的MBR记录详解

在硬盘中,硬盘的0柱面0磁头第一个1扇区称为主引导扇区,也叫主引导记录-MBR(main boot record),其中MBR是以下三个部分组成

1、Bootloader,主引导程序---446个字节

2、Dpt(Disk Partition table),硬盘分区表---64个字节

3、扇区结尾标志(55aa)--2个字节

总共512字节,前446个字节是主引导记录,是bios加电自检后要运行的代码,中间64字节为分区表。

简单的来说MBR=bootloader+dpt(64)+结尾标志(55aa)。其中dpt磁盘分区表(64字节,每16个字节为一组,一共4组),

那么在linux系统中我们如果取得一个磁盘的MBR呢?其实不难、我们可以通过dd命令取得,如下图所示:

linux中的磁盘的MBR记录详解

当我们在linux系统中取得了磁盘的MBR之后,我们可不可以去查看呢,在这里笔者介绍三种查看mbr内容的方法

方法一、使用hexdump命令进行查看

[root@ ~]# hexdump -C mbr.bin       //共33行,32行*16字节,以55aa结尾

-c  每单元以字节为单位,显示出对应的ASCII码
-C 每单元以字节为单位,同时显示十六机制和ASCII码

----------------------------------------------------------------------------------------------------
方法二、在vim命令模式下输入:%!xxd 即是将前文本转换为16进制格式。

此方法55aa结尾后面还有一行,内容为0a,对于内容笔者表示不清楚

----------------------------------------------------------------------------------------------------
方法三、使用od命令进行查看

[root@ ~]# od -x mbr.bin      //共33行,32行*16字节

但是这个和和前面2种方法输出显示不一样、因为他是以aa55结尾,注意这种方法看的时候要把每一组两个字节调换位置来看

如aa55在硬盘上存储的实际是55aa了,经上网查询说是little-endian的原因,这里也就不多探究了。

上一篇:MySQL 性能优化的最佳20多条经验分享(二)(转)


下一篇:机器学习 1、R语言