GRUB配置及应用


、什么是GRUB?

     GRUB是GRand Unified Bootloader的缩写,它是一个多重操作系统启动管理器,安装在MBR中。


二、GRUB运行流程

     Stage1:启动位于MBR中boot loader的主程序。

     Stage1_5:让boot loader能够是识别位于MBR之后扇区Stage2所在分区上的文件系统。

     Stage2:加载所有配置档与相关的环境参数文件 (包括文件系统定义与主要配置档 menu.lst), 一般来说,配置档都在 /boot/grub。

wKiom1cCYoeDJw5-AABbdOgPpe8608.png


三、GRUB功能

1) 提供菜单,并提供交互式接口

       e:编辑模式,用于编辑菜单

       c:命令模式,交互式接口

2) 加载用户选择的内核或操作系统

       允许传递参数给内核

       可隐藏此菜单

3) 为菜单提供保护机制

       为编辑菜单进行认证

       为启用内核或操作系统进行认证


四、GRUB如何识别设备

      (hd##):

              hd#:磁盘编号,用数字表示,从0开始编号

                #:分区编号,用数字表示,从0开始编号


五、GRUB命令行接口

      help: 获取帮助列表

      help KEYWORD: 详细帮助信息

      find (hd#,#)/PATH/TO/SOMEFILE

      root (hd#,#)

      kernel /PATH/TO/KERNEL_FILE: 设定本次启动时用到的内核文件;额外还可以添加许多内核支持使用的cmdline参数;

例如:init=/path/to/init, selinux=0

      initrd /PATH/TO/INITRAMFS_FILE: 设定为选定的内核提供额外文件的ramdisk(必须完全匹配内核版本号)

       boot: 引导启动选定的内核;

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

     grub> root (hd#,#)

     grub> kernel /vmlinuz-VERSION-RELEASE ro root=/dev/DEVICE

     grub> initrd /initramfs-VERSION-RELEASE.img

     grub> boot

2)配置文件:/boot/grub/grub.conf

wKiom1cCZAjhw0a7AACS7S96Rn0865.png

grub-md5-crypt命令:设置加密码

 

3)进入单用户模式:

  (1) 编辑grub菜单(选定要编辑的title,而后使用e命令);

  (2) 在选定的kernel后附加1, s, Ssingle都可以;

  (3) kernel所在行,键入“b”命令;

4)安装grub:

  (1)grub-install

      grub-install --root-directory=ROOT /dev/DISK

wKiom1cCbKSwpX-KAAAsk5us2G0563.png

 (2)grub

    grub> root (hd#,#)

    grub> setup (hd#)

wKioL1cCZrbhtn54AAAYYK9xh9g701.png

wKioL1cCZa2QglBUAAAtsb9edfA910.png


六、练习:

1.新加硬盘,提供直接单独运行bash系统;

1)硬盘分三个区/sdb1/sdb2/sdb3、并格式化分区(/sdb3创建swap分区),挂载/sdb1/mnt/boot/sdb2/mnt/sysroot下。

创建/mnt/boot、/mnt/sysroot及其子目录(/bin、/lib64…等)

wKiom1cCZnGiKjKyAAAzB5ZdYfw507.png

2)/boot所在分区安装grub,并复制内核及对应RamDisk/boot目录下,编写grub配置文件。

wKiom1cCZnKQvgQmAAAsk5us2G0172.png

wKioL1cCZx6wuhrNAAAZojNCcCs148.png

wKioL1cCZyGQRMeeAAAZfpW7SbI019.png

3)复制/bin/bash/sysroot/bin下,随后复制相关库文件到对应目录。

wKiom1cCZnnQkjipAAAvqEQOkGQ696.png

4)关闭系统,新建一个虚拟机加载该磁盘

wKiom1cCZnzDpShwAAASmIDSpgM394.png

wKiom1cCaLGh-J97AAAaO-Y7Igw156.png

wKiom1cCaLGAwFpyAAAUz1jxjQM126.png

wKioL1cCaVuTR9pUAAAc_BXV54Q772.png

2.破坏本机grub stage1,而后在救援模式下修复之;

1)破坏本机grub

wKiom1cCZQPQVdK-AAAJ5VbXbAg783.png

2)挂载镜像盘开机

wKiom1cCaMfToLj0AAQ753r62zs318.png

3)切换到原系统根目录

wKioL1cCaXKi8ognAAAX7S6aTH4304.png

4)重新安装grub

wKioL1cCaXLSanErAAARzdE_xJ8977.png

3.为grub设置保护功能;

1)使用grub-md5-crypt命令生成密码信息。

wKioL1cCaXWDiI9AAAANT1jwVrM811.png  

2)/boot/grbu/grub.conf中添加一行“password --md5 密码串”,保存退出。

wKiom1cCaM-igldDAABfaVvy2oc515.png

3)开机进入grub后按p输入设置好的密码进入grub

wKioL1cCaXnDzayxAAAYxAP4aHE618.png