grub应用
1.Grub(bootloader):全称为:GRand Unified Bootloader。
现在存在两个版本:
grub 0.x: grub legacy
grub 1.x:grub2
2.grub的功能:
功能:提供一个菜单,允许用户选择要启动系统或不同的内核版本;把用户选定的内核装载到内存中的特定空间中,解压、展开,并把系统控制权移交给内核;
3.grub legacy 有三个阶段,分别是:
stage1,stage1_5,stage2
stage1:存放在MBR中
stage1_5:存放在MBR之后的扇区中,让stage1中的Bootloader能识别stage2所在的分区上的文件系统
stage2:存在磁盘分区上(/boot/grub),提供菜单让用户选择不同的内核或操作系统。
grub的配置文件存放目录为:/boot/grub/grub.conf其中/etc/grub.conf文件是/boot/grub/grub.conf的一个连接文件
当系统启动的时,如果要加载grub所在的磁盘时,会读取这个磁盘的MBR,同时会加载stage1,stage1会尝试读取随后扇区的stage1_5阶段,stage1_5阶段会帮助stage1中的bootloader识别statge2所在的分区上的文件系统,然后加载stage2所在磁盘分区,这个分区不但有stage2阶段,还有内核和ramdisk等.
stage2及内核等通常放置于一个基本磁盘分区,而不会放在一个复杂的磁盘分区上,因为stage无法识别复杂的磁盘分区,如逻辑卷,软raid等。这也是为什么要单独创建一个简单的boot分区,而系统跟/做一个逻辑卷。但并不意味着boot要单独分区。
常用功能:
(1) 提供菜单、并提供交互式接口
e: 编辑模式,用于编辑菜单;
c: 命令模式,交互式接口;
(2) 加载用户选择的内核或操作系统
允许传递参数给内核
可隐藏此菜单
(3) 为菜单提供了保护机制
为编辑菜单进行认证
为启用内核或操作系统进行认证
4.grub的交互式接口:
在系统启动时会有timeout用户选择的时长,按Enter键会进入一下界面(菜单选项):
grub如何识别设备: