GRUB启动引导程序配置及命令行接口详解

mydinne 2018-02-16

一.版本

grub:Grand Unified Bootloader
grub 0.x:grub legacy
grub 1.x:grub2

二、grub legacy

三个过程
stage1:安装在mbr
stage1_5:存放在mbr之后的扇区

stage2:存放在磁盘分区(/boot/grub)

配置文件

/boot/grub/grub.conf、/etc/grub.conf

GRUB启动引导程序配置及命令行接口详解

功用
stage2及内核等通常放置于一个基本磁盘分区
1.提供菜单、并提供交互式接口 •e:编辑模式、用于编辑菜单
c:命令模式、交互式接口

GRUB启动引导程序配置及命令行接口详解

2.加载用户选择的内核或操作系统 •允许传递参数给内核
可隐藏此菜单

3.为菜单提供保护机制
为编辑菜单进行认证

识别设备
GRUB不区分IDE硬盘和SCSI硬盘,统一使用hdx来标识。其中x指定BISO硬盘编号,从零开始计数,而且通常计算机的IDE硬盘编号在SCSI硬盘前。Grub使用hd(X,Y)编号来识别计算机中某一硬盘的某一分区。
其中括号一定要用英文半角,且hd后逗号均无空格;
*其中hd(X,Y)的X是指计算机中的X块硬盘,编号从0开始,在BIOS中设置引导的第一块硬盘为0,其他的硬盘按照IDE的顺序排列,依次为1,2,3,...

hd(X,Y)中的Y指的是硬盘中划分出来的第几个分区。编号也是从0开始,其他的分区是1,2,3,,需要注意的是:0,1,2,3,是指硬盘中的主分区,如果是扩展分区,编号将从4开始,一直到最后一个扩展分区。

GRUB启动引导程序配置及命令行接口详解

grub命令行接口

help:获取帮助列表
help KEYWORD:详细帮助信息
find (hd#,#)/PATH/TO/SOMEFILE:查找
kernel /PATH/TO/KERNEL_FILE:设定本次启动时用到的内核文件;额外还可以添加许多内核支持使用的cmdline参数

initrd /PATH/TO/INITRAMFS_FILE:设定为选定的内核提供额外文件的ramdisk
 boot:引导启动选定的内核

GRUB启动引导程序配置及命令行接口详解

GRUB启动引导程序配置及命令行接口详解

手动在grub命令行接口启动系统

grub>root(hd#,#)grub所在的的根
grub>kernel /vmlinuz-VERSION-RELEASE ro root=/dev/DEVICE 设定本次启动用到的内核文件
grub>initrd /initrafs-VERSION-RELEASE.img
 grub>boot 启动

三、查看配置文件/boot/grub/grub.conf
default=0    设定默认启动菜单项
timeout=5    菜单项等待选项时间为5s
splashimage=(hd0,0)/grub/splash.xpm.gz    指明菜单背景图片路径为
hiddenmenu  隐藏菜单
title CentOS (2.6.32-358.6.1.el6.x86_64)  定义菜单项
    root (hd0,0)  grub查找stage2及kernel文件所在设备分区,grub的根
    kernel /vmlinuz-2.6.32-358.6.1.el6.x86_64 ro root=/dev/vg_have/lv_root rd_NO_LUKS LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 crashkernel=auto rhgb quiet      启动的内核
    initrd /initramfs-2.6.32-358.6.1.el6.x86_64.img      内核匹配的ramfs文件

相关推荐