GRUB的配置文件menu.lst怎么写

37次阅读
没有评论

共计 2130 个字符,预计需要花费 6 分钟才能阅读完成。

丸趣 TV 小编给大家分享一下 GRUB 的配置文件 menu.lst 怎么写,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

menu.lst 位于 /boot/grub/menu.lst, 而 /boot/grub/grub.conf 相当于是 menu.lst 在 windows 下的快捷方式(重装系统有时破坏 GRUB 后,menu.lst 丢失而无法启动 GRUB 菜单时就需要在 /boot 下建立 menu.lst 后再和 grub.conf 建立链接来修复, 建立链接是:ln -s menu.lst grub.conf (注意两文件的前后关系)), 我们来学习如何编写 GRUB 的配置文件 menu.lst.

首先来看一下 /boot/grub/menu.lst 中的内容:
default=0
timeout=5
#splashp_w_picpath=(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 个开始,GRUB 中是 0, 而第 2 个是 1, 依次类推 …
b,timeout=5
表示的是出现 GRUB 界面后, 无操作情况下进入 default 设定的操作系统的时间, 如果上下移动选择, 则该选项无效
c,splashp_w_picpath=(hd0,6)/boot/grub/splah.xpm.gz
表示的是允许出现的 GRUB 背景的 path, 显然(hd0,6) 指定了分区(不知能否这么解释, 呵呵), 而后边的则是正常的 path(在例子中, 用 #把它注释, 为一可选项)
d,hiddenmenu
表示隐藏 GRUB 的启动菜单, 直接进入由 default 庙宇的操作系统中去, 为一可选项.

linux 类
其格式一般为:
title (……)
root (hd[0-n],x)
kernel (……)
initrd (……)
其中:
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 文件名, 然后写入.

在了解了以上情况之后, 我们就很容易地理解另一种写法了:
title (……)
kernel (hd[0-n],y)(/boot)…… ro root=……
initrd (hd[0-n],y)(/boot)……
其实只是省略的 root 很实在地写在了 kernel 和 initrd 行中去了而已

附:
其实在 GRUB 启动菜单不能工作的时候, 进入 GRUB 命令行 (可按 CTRL+ C 键) 后, 我们同样可以一步一步地把系统启动起来, 其实在 menu.lst 中, 除 title 不是指令外, 其余的都是 GRUB 指令, 我们只要一步步地输入它们(错了要从新开始), 中间输入关于 kernel 和 initrd 要利用
TAB 键补齐写好, 最后只要 boot 一下就行了.

用 GRUB 指令引导 windows:
GRUB rootnoverify (hd0,0)
GRUB chainloader +1
GRUB boot

看完了这篇文章,相信你对“GRUB 的配置文件 menu.lst 怎么写”有了一定的了解,如果想了解更多相关知识,欢迎关注丸趣 TV 行业资讯频道,感谢各位的阅读!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-25发表,共计2130字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)