注意:
1、在grub中所有硬盘都识别为hd,不同的硬盘基于数字标识:如hd0(表示第一块硬盘), hd1(第二块硬盘),同一个硬盘上的不同分区,也使用数字标识,如hd0,0(第一块硬盘上的第一个分区);
2、因为grub不能识别物理卷(PV),当然root不能放在逻辑卷(lv)上,所以root一般单独分区且一定为基本磁盘分区。
【grub命令行接口】
启动方式: 启动界面->敲c进入
root(DEVICE):指定哪个分区为接下来要启动的系统或内核文件所在的分区
例:root (hd0,0)
kernel: 指定要运行的内核文件
initrd: 为要运行的内核指定其可用的ramdisk文件
boot: 启动此前配置好的内核或系统
find (DEVICE)/path/to/file 查找指定文件是否在分区上,支持命令补全
例:find (hd0,0)/vmlinuz-2.6.32-431.el6.i686
注:grub命令行接口支持命令行补全,在此模式下要启动系统必须预先知道根所在的设备。
【grub保护机制配置】
途径:通过修改grub的配置文件,一般为/boot/grub/grub.conf
1、生成密码:
[root@CentOS6 ~]# grub-md5-crypt #通过md5算法来生成密码;
Password: #键入预要设置的密码;
Retype password: #确认密码;
$1$J99TE$c7VWrcDAfB1GrVqI5.E0L. #用md5算法生成的密码;
2、保护编辑功能,则需要在title之外添加:password --md5 密码串;
# ----略---
#boot=/dev/sda
default=1
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
password --md5 $1$J99TE$c7VWrcDAfB1GrVqI5.E0L. #设置编辑功能保护
title CentOS (3.19.6)
root (hd0,0)
#----略---
设置后的效果如上图所示:提示我们想要进入编辑界面,必须先按'p'键再键入正确的密码。
3、保护使用某内核,则需要内核对应的title之下添加:password --md5 密码串
# ----略---
#boot=/dev/sda
default=1
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (3.19.6)
password --md5 $1$J99TE$c7VWrcDAfB1GrVqI5.E0L. #设置保护CentOS (3.19.6)这内核;
root (hd0,0)
#----略---
【安装grub的方式】:
1、使用grub-install命令
# grub-install [--root-directory=DIR] DEVICE
--root-directory=指定的路径必须是内核及initrd文件所在的分区的挂载点的父目录,且此挂载点必须叫boot
例如:在/dev/sdb上的/dev/sdb1分区含有内核及initrd文件,现需要在sdb上安装grub。
[root@CentOS6 ~]#mount /dev/sdb1 /mnt/boot
[root@CentOS6 ~]#grub-install --root-directory=/mnt /dev/sdb
如何在Ubuntu12.04/12.10中重装或修复Grub2引导
Linux启动引导过程 grub和mbr