grub(GrandUnified Boot Loader)是有名的引导内核程序(另外一款比较有名的是LILO,嵌入式环境使用U-boot、bootloader),它支持多种硬盘分区类型加载(FAT,ext2,ext3,ext4,minix,FFS等),支持多系统引导等。
1、配置文件:/boot/grub/grub.conf
配置项:
default=#: 设定默认启动的菜单项;落单项(title)编号从0开始;timeout=#:指定菜单项等待选项选择的时长;
splashp_w_picpath=(hd#,#)/PATH/TO/XPM_PIC_FILE:指明菜单背景图片文件路径;
hiddenmenu:隐藏菜单;
password [--md5] STRING: 菜单编辑认证;
title TITLE:定义菜单项“标题”, 可出现多次;
root (hd#,#):grub查找stage2及kernel文件所在设备分区;为grub的“根”;
kernel /PATH/TO/VMLINUZ_FILE [PARAMETERS]:启动的内核
initrd /PATH/TO/INITRAMFS_FILE: 内核匹配的ramfs文件;
password [--md5] STRING: 启动选定的内核或操作系统时进行认证;
说明:grub-md5-crypt命令:password项配置的密码为密文,可以用此命令进行加密
2、grub的操作界面
系统启动bootloader加载grub的界面时,可以按键盘的任意键,进入grub的启动页面。
如图:
e: 编辑模式,用于编辑菜单;
c: 命令模式,交互式接口;
进入单用户模式:
进入单用户模式:
(1) 编辑grub菜单(选定要编辑的title,而后使用e命令);
(2) 在选定的kernel后附加
1, s, S或single都可以;
(3) 按回车键返回上一个界面,在kernel所在行,键入“b”命令,进入单用户模式;
3、grub的修复
(1)如果是grub的配置文件出现了问题可以出现编写或是从其他版本系统拷贝
(2)整个grub招到破坏
如下:
先将grub的数据破坏
系统不能启动
使用光盘启动
经过语言选择,磁盘检查,网络设置等操作,进入到shell提示符
执行如下命令:
sh-4.1# chroot /mnt/sysp_w_picpath sh-4.1# grub-install /dev/sda sh-4.1# exit sh-4.1# exit
然后重启系统,可以正常启动系统。
当然,也可以把grub损坏的硬盘接入到其他正常运行的系统。
将/boot分区挂在到/mnt/boot目录下,
执行:
grub-install --root-directory=/mnt/boot /dev/sda #--root-directory=后面填写/boot所挂在的目录,/dev/sda为损坏grub的磁盘