GRUB 的全称是 Grand Unified Bootloader
第一代 grub0.x grub legacy 传统 grub
第二代 grub1.x grub2
第二代与第一代在代码上没有任何关系, 第二代 grub 是完全重写的.
grub legacy
第 1 阶段: 运行一段代码, 这段代码占用了引导启动器的代码位置
第 1.5 阶段: 运行一段代码, 这段代码在 bootloader 之后的 27 个扇区中, 这个阶段中的代码可以说是磁盘的驱动程序, 为了可以让第一阶段的程序可以加载第二阶段代码(第二阶段代码存放于磁盘上).
第 2 阶段: 第 1 阶段程序成功加载了第 2 阶段的 grub 程序脚本后执行 grub 程序并且加载 kernel 程序. grub 的配置文件存在于 / boot/grub/grub.conf 或者 / boot/grub2/grub.cfg 中
注意:/boot 分区必须存放与基本磁盘分区上
客户在启动系统的时候可以选择启动内核文件, 这个程序就是 grub 程序.
功能:
1, 提供菜单, 并提供交互式接口
e: 编辑模式 用于编辑菜单
c: 进入命令行模式, 也可以叫做进入 grub 系统
2, 加载用户选择的内核或操作系统
允许用户传递参数给内核
可隐藏此菜单
3, 为菜单提供保护机制
为编辑菜单进行认证
为启动内核或操作系统进行认证
grub 如何识别设备
boot 分区可以单独分区, 也可以是根文件系统下的一个目录. 最核心的思想是, boot 必须在一个基本分区上.
grub legacy 版本使用 (hdN,M) 标识分区, 第 N 个磁盘的第 M 个分区
来源: http://www.bubuko.com/infodetail-2638320.html