36、Linux 启动过程详解

Linux 启动过程详解

1. 数据重复区域与分区表推断

在输出中,地址 0000020 到 0000120 之间存在第二个重复数据区域。由于该区域与实际的引导记录不同,且在文件中全为零,我们可以推断这就是实际引导记录中分区表的位置。

此外,有一个有趣的实用工具 strings ,可用于查看文件中的 ASCII 文本字符串:

[root@studentvm1 ~]# strings /boot/grub2/i386-pc/boot.img
ZRr=
`|f
\|f1
GRUB
Geom
Hard Disk
Read
 Error
Floppy

这个工具比筛选多行偶尔出现的随机 ASCII 字符来查找有意义的字符串更容易定位实际的文本字符串。但要注意,并非所有文本字符串对人类都有意义。

2. GRUB 引导记录安装

GRUB 引导记录使用 boot.img 文件作为源,安装在硬盘或其他可引导介质的第一个扇区。然后,分区表会叠加在引导记录的指定位置。

3. GRUB 阶段 1.5

3.1 位置

GRUB 阶段 1.5 必须位于引导记录与 UEFI 分区数据以及磁盘驱动器上的第一个分区之间的空间。由于技术和兼容性原因,这个空间历史上一直未被使用,有时被称为“引导轨道”或“MBR 间隙”。硬盘上的第一个分区从扇区 63 开始,而 MBR 在扇区 0,因此有 62 个 512 字节的扇区(共 31,744 字节)可用于存储 GRUB 阶段 1.5

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值