grub启动引导装载程序详解。
grub 启动引导装载程序,启动引导器是计算机启动过程中的运行的第一个真正的软件,通常计算机启动时通过bios自检后读取并运行主引导扇区MBR中的启动引导器boot loader程序,启动引导器再负责加载硬盘中分区的操作系统,linux默认是grub,也可以是lilo。
grub术语
1.grub下的设备名称
grub的物理磁盘命名的方法,和标准linux的设备命名方法不太一样,所有的scsi ide都是hd开头的,软盘用fd开头,设备名称如下形式
(hdX,Y)//一般都是零开始计算的哦,如hd(0,2)表示第一个硬盘第3个分区哦
(fdX)
其中x代表 第几个硬盘一般都是从零开始计算而不是一来计算的哦,
2.grub的操作界面有3个强大的界面
1菜单界面 如e编辑模式,a启动内核追加,c键进入命令行界面,一般在grub中设置只对本次修改有效,再次启动失效,如果要永久生效,那到/boot/grub/grub.conf中休息保存即可。
3.grub配置文件举例:
//全局配置模式
default 0 //表示启动菜单默认是第一个选项
timeout 10//表示grub载入默认default等待时间单位为秒
splashp_w_picpath (hd0,0)/boot/grub/splash.xpm.gz//表示开机屏幕位置这个也可以自己diy
//全局配置从文件头开始到第一个title标题结束
title Centos for zh888 Linux (2.6.xx)//特定的标题可以随便写
root (hd0,0)//表示设置grub根设备为linux内核所在的分区
kernel /boot/vmlinuz-2.6.xx.el ro root=LABEL=/ 内核所在的分区
initrd /boot/initrd-2.6.xx.el.img//initrd加载镜像文件镜像文件里有许多驱动程序
//配置文件中可以使用title命令定义多个启动菜单
title win2kp
map (hd0)(hd1) //map的作用是交换磁盘或分区在bios中的标志符,用于启动在第二个硬盘的windows
map (hd1))hd0)
root noverify (hd1,0)
makeactive //makeactive表示根设备为活动分区(针对于windows不能从非活动分区启动)
chainloader +1 //表示使用chainloader命令来调用windows分区的启动引导器引导windows系统。
4.grub的使用技巧
重新安装grub 当计算机丢失了grub,如果windows重新安装,那就会丢失grub程序,因为windows重新写了grub到mbr中所以grub丢失了
那可以用两种方法解决1就是引导软盘启动 2就是使用第一张光盘进入rescue救援模式
执行 /sbin/grub-install /dev/hd0
2,进入grub
#grub
grub>root (hd0,7)
grub>setup (hd0)
grub>quit即可
如果不知道centos安装在哪个硬盘上可以用hd (hd0,然后用tab来补全命令来查看)也可以用find命令来查找
find /boot/grub/stage1即可出现(hd0,7)这个方法比较快速
5.如果丢失root口令那直接到单用户模式下修改password即可
启动grub a追加内核参数中输入空格1或single 进入单用户,然后#中输入passwd即可修改密码。但是有些时候因为/boot/grub/grub.conf文件被加密了,输入a时候要你p输入密码,如果你密码忘记了,那直接到rescue救援模式下,把/grub.conf文件中的password 删除或井号掉即可,如果不可写,那直接重新挂在根文件mount -o remount rw /文件即可。修改好之后重新启动即可。