Ubuntu GRUB系统引导器
时间:2010-11-08 来源:mydear
特别值得一提的是 GRUB有很多值得学习的地方,这里我们主要介绍Ubuntu GRUB,包括介绍boot等方面。Ubuntu GRUB是一款非常优秀的系统引导器,它的功能非常强大。
Ubuntu的/boot/grub下没有Ubuntu GRUB.conf这个文件(一般linux系统下都是这个文件),跟它等价的文件是menu.lst,他们的参数设置基本是一样的,下面以 menu.lst的内容来了解下各参数的意义,首先我们来看一下/boot/grub/menu.lst中的内容:
default=0
timeout=5
#splashimage=(hd0,6)/boot/grub/splash.xpm.gz
hiddenmenu
title Fedora Core (2.6.11-1.1369_FC4)
root (hd0,6)
kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/
initrd /boot/initrd-2.6.11-1.1369_FC4.img
title Windows XP
rootnoverify (hd0,0)
chainloader +1
其中:
a,default=0
表示默认启动的第0号的操作系统,在GRUB中,title定义了启动的操作系统,从第1个开始,Ubuntu GRUB中是0,而第2个是1,依次类推...
b,timeout=5
表示的是出现Ubuntu GRUB界面后,无操作情况下进入default设定的操作系统的时间,如果上下移动选择,则该选项无效;如果将timeout参数删除或者将等于号后的 数字改为负数,将会使该项彻底失效,Ubuntu GRUB将一直停留在引导页面等待用户选择。
c,splashimage=(hd0,6)/boot/grub/splah.xpm.gz
表示的是允许出现的GRUB背景的path, 当进入Ubuntu GRUB引导界面的时候,可以看见一副背景图片,这个参数提供的就是这个功能。为了使Ubuntu GRUB引导更加个性化,大家也可以自己准备一张XPM图片,然后将图片压缩成gz格式,最后修改splashimage参数中的文件路径即可,此项为一 可选项,所以上面将它用#注释了。
d,hiddenmenu
表示隐藏Ubuntu GRUB的启动菜单,直接进入由default设定的操作系统中去,为一可选项.
linux类
其格式一般为:
title (......)
root (hd[0-n],x)
kernel (......)
initrd (......)
Ubuntu GRUB其中:title行,是定义一个启动操作系统,而后边可以自己随便写上喜欢的名字,呵,当然最起码你得写得要自己能认出来,没必要把linux写成windows吧?!
root行,指定相应的linux所有的/boot,如果在写分区和挂载时没有单独挂载,那么就和/在同一个分区中,hd[0-n]表示的是第几个硬盘,而x则表示的是[第几个分区-1],即x比分区号小1,特别要注意.
kernel行,在这里以kernel 起始,指定Linux的内核的文件所处的绝对路径(通过在终端输入命令:ls /boot/vmlinuz*来看内核的全名);因为内核是处在/boot目录中的,而如果/boot是独立的一个分区,则需要把boot省略,因为 /boot所在的分区在root (hd[0-n],x)中指定了,所以就无需要再指明内核处在哪个分区了;ro 表示只读;root=LABEL=/ 来表示Linux的根所处的分区。LABEL=/ 这是硬盘分区格式化为相应文件系统后所加的标签;如果您不了解什么是标签,也可以直接以/dev/hd[a-z]X 或者/dev/sd[a-z]X来表示;就看您的Linux是根分区是在哪个分区了。比如我的是在/dev/hda3,那这里就可以写成root= /dev/hda3;
initrd行,如果是/boot独立一个分区,initrd 一行要把/boot中省略;如果/boot不是处于一个分区,而是和Linux的/分区处于同一分区,不应该省略;我们通过查看/boot中的 initrd的文件名到底是什么来写这一行代码,在终端输入:ls /boot/initrd*
很容易能得到initrd文件名,然后写入.