首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >系统启动(1)-引导方式和分区表

系统启动(1)-引导方式和分区表

原创
作者头像
skystone
发布2025-11-23 17:27:18
发布2025-11-23 17:27:18
790
举报
文章被收录于专栏:Linux DocLinux Doc

磁盘引导方式和分区表格式息息相关,不同的磁盘引导方式对应不同的分区表。

1. 引导方式

  • BIOS,传统的(legacy)。
  • UEFI
1.1. BIOS引导过程

上电,BIOS自检,确定引导介质,读取并加载引导介质中的引导程序,引导。磁盘的引导程序就在磁盘前512字节的最开始。

这个引导程序,只能支持MBR分区表格式。

有的文档会将这个引导程序称之为“主引导记录”,(就是MBR,Master Boot Record)。

1.2. UEFI引导过程

上电,UEFI,UEFI读取EFI引导程序,引导。

UEFI引导方式主要与GPT磁盘进行配合完成计算机的启动。GPT磁盘中包含了ESP隐藏分区,用于存放EFI引导程序。EFI引导程序会在计算机启动后,被UEFI固件加载继续执行引导流程。

2. 分区表格式

  • MBR, 512字节,以55aa结尾。磁盘引导程序和磁盘分区信息保存在磁盘第一个扇区(扇区大小512B)的磁盘分区格式。
  • GPT,0扇区(512字节)保留不用;1扇区~33扇区,分区表;倒数的扇区,和前面扇区对应,备份。
2.1. MBR样例
代码语言:txt
复制
    00000000  eb 63 90 10 8e d0 bc 00  b0 b8 00 00 8e d8 8e c0  |.c..............|
    00000010  fb be 00 7c bf 00 06 b9  00 02 f3 a4 ea 21 06 00  |...|.........!..|
    00000020  00 be be 07 38 04 75 0b  83 c6 10 81 fe fe 07 75  |....8.u........u|
    00000030  f3 eb 16 b4 02 b0 01 bb  00 7c b2 80 8a 74 01 8b  |.........|...t..|
    00000040  4c 02 cd 13 ea 00 7c 00  00 eb fe 00 00 00 00 00  |L.....|.........|
    00000050  00 00 00 00 00 00 00 00  00 00 00 80 01 00 00 00  |................|
    00000060  00 00 00 00 ff fa 90 90  f6 c2 80 74 05 f6 c2 70  |...........t...p|
    00000070  74 02 b2 80 ea 79 7c 00  00 31 c0 8e d8 8e d0 bc  |t....y|..1......|
    00000080  00 20 fb a0 64 7c 3c ff  74 02 88 c2 52 be 05 7c  |. ..d|<.t...R..||
    00000090  b4 41 bb aa 55 cd 13 5a  52 72 3d 81 fb 55 aa 75  |.A..U..ZRr=..U.u|
    000000a0  37 83 e1 01 74 32 31 c0  89 44 04 40 88 44 ff 89  |7...t21..D.@.D..|
    000000b0  44 02 c7 04 10 00 66 8b  1e 5c 7c 66 89 5c 08 66  |D.....f..\|f.\.f|
    000000c0  8b 1e 60 7c 66 89 5c 0c  c7 44 06 00 70 b4 42 cd  |..`|f.\..D..p.B.|
    000000d0  13 72 05 bb 00 70 eb 76  b4 08 cd 13 73 0d 5a 84  |.r...p.v....s.Z.|
    000000e0  d2 0f 83 de 00 be 85 7d  e9 82 00 66 0f b6 c6 88  |.......}...f....|
    000000f0  64 ff 40 66 89 44 04 0f  b6 d1 c1 e2 02 88 e8 88  |d.@f.D..........|
    00000100  f4 40 89 44 08 0f b6 c2  c0 e8 02 66 89 04 66 a1  |.@.D.......f..f.|
    00000110  60 7c 66 09 c0 75 4e 66  a1 5c 7c 66 31 d2 66 f7  |`|f..uNf.\|f1.f.|
    00000120  34 88 d1 31 d2 66 f7 74  04 3b 44 08 7d 37 fe c1  |4..1.f.t.;D.}7..|
    00000130  88 c5 30 c0 c1 e8 02 08  c1 88 d0 5a 88 c6 bb 00  |..0........Z....|
    00000140  70 8e c3 31 db b8 01 02  cd 13 72 1e 8c c3 60 1e  |p..1......r...`.|
    00000150  b9 00 01 8e db 31 f6 bf  00 80 8e c6 fc f3 a5 1f  |.....1..........|
    00000160  61 ff 26 5a 7c be 80 7d  eb 03 be 8f 7d e8 34 00  |a.&Z|..}....}.4.|
    00000170  be 94 7d e8 2e 00 cd 18  eb fe 47 52 55 42 20 00  |..}.......GRUB .|
    00000180  47 65 6f 6d 00 48 61 72  64 20 44 69 73 6b 00 52  |Geom.Hard Disk.R|
    00000190  65 61 64 00 20 45 72 72  6f 72 0d 0a 00 bb 01 00  |ead. Error......|
    000001a0  b4 0e cd 10 ac 3c 00 75  f4 c3 00 00 00 00 00 00  |.....<.u........|
    000001b0  00 00 00 00 00 00 00 00  fd 45 09 00 00 00 80 20  |.........E..... |
    000001c0  21 00 83 dd 1e 3f 00 08  00 00 00 a0 0f 00 00 dd  |!....?..........|
    000001d0  1f 3f 8e fe ff ff 00 a8  0f 00 00 58 bd 45 00 00  |.?.........X.E..|
    000001e0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    000001f0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 55 aa  |..............U.|
2.2. GPT样例

扇区0,前512字节,保留

代码语言:txt
复制
    00000000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    *
    000001b0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 80 00  |................|
    000001c0  01 00 ee fe ff ff 01 00  00 00 ff ff ff ff 00 00  |................|
    000001d0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    *
    000001f0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 55 aa  |..............U.|
    00000200

扇区1,512字节,GPT头

代码语言:txt
复制
    [root@wwjk02-pa-dsj ~]# dd if=/dev/sdb  bs=1 count=512 skip=$((512*1))|hexdump -C
    00000000  45 46 49 20 50 41 52 54  00 00 01 00 5c 00 00 00  |EFI PART....\...|
    00000010  81 5c d7 16 00 00 00 00  01 00 00 00 00 00 00 00  |.\..............|
    00000020  ff ff 67 2e 02 00 00 00  22 00 00 00 00 00 00 00  |..g.....".......|
    00000030  de ff 67 2e 02 00 00 00  da d0 c1 85 ae db 7b 47  |..g...........{G|
    00000040  b2 c7 9a 05 16 98 41 6a  02 00 00 00 00 00 00 00  |......Aj........|
    00000050  80 00 00 00 80 00 00 00  97 48 4c ad 00 00 00 00  |.........HL.....|
    00000060  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    *
    00000200

扇区2~33,32个扇区,512*32,16KB,GPT分区表

代码语言:txt
复制
    [root@wwjk02-pa-dsj ~]# dd if=/dev/sdb  bs=1 count=$((512*32)) skip=$((512*2))|hexdump -C
    00000000  79 d3 d6 e6 07 f5 c2 44  a2 3c 23 8f 2a 3d f9 28  |y......D.<#.*=.(|
    00000010  35 a4 f8 dc e8 f1 ee 4d  9c eb 7d 24 5a ba 2a e5  |5......M..}$Z.*.|
    00000020  00 08 00 00 00 00 00 00  ff f7 67 2e 02 00 00 00  |..........g.....|
    00000030  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    *
    00004000

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 引导方式
    • 1.1. BIOS引导过程
    • 1.2. UEFI引导过程
  • 2. 分区表格式
    • 2.1. MBR样例
    • 2.2. GPT样例
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档