当前位置:  技术问答>linux和unix

menu.lst和grub.conf作用是什么?

    来源: 互联网  发布时间:2016-11-07

    本文导语:  这两个文件好像是一模一样的,请问他们之间有什么区别? | 转载 --------------------------------------------------------------------------------------------- grub的说明与配置方法 menu.lst grub.conf menu.lst位于/boot/...

这两个文件好像是一模一样的,请问他们之间有什么区别?

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

首先来看一下/boot/grub/menu.lst中的内容:
==========================================================
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You do not have a /boot partition. This means that
#          all kernel and initrd paths are relative to /, eg.
#          root (hd0,0)
#          kernel /boot/vmlinuz-version ro root=/dev/hda1
#          initrd /boot/initrd-version.img
#boot=/dev/hda
default=0
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
title Fedora Core (2.6.18-1.2798.fc6)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.18-1.2798.fc6 ro root=LABEL=/ rhgb quiet selinux=0
        initrd /boot/initrd-2.6.18-1.2798.fc6.img

title Windows XP
rootnoverify (hd0,3)
chainloader +1
===========================================================

其中:
1,default=0
表示默认启动的第0号的操作系统,在GRUB中,title定义了启动的操作系统,从第1个开始,GRUB中是0,而第2个是1,依次类推...
2,timeout=5
表示的是出现GRUB界面后,无操作情况下进入default设定的操作系统的时间,如果上下移动选择,则该选项无效
3,splashimage=(hd0,6)/boot/grub/splah.xpm.gz
表示的是允许出现的GRUB背景的path,显然(hd0,6)指定了分区(不知能否这么解释,呵呵),而后边的则是正常的path(在例子中,用#把它注释,为一可选项)
4,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.conf是menu.lst的链接 ,原文件应该是 /boot/grub/menu.lst

bash-3.00$ ls -lh /etc/grub.conf
lrwxrwxrwx 1 root root 19 2005-08-05 12:49 /etc/grub.conf -> /boot/grub/menu.lst
bash-3.00$

    
 
 

您可能感兴趣的文章:

  • 编辑menu.lst 使用grub 引导windows
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间java.awt类menu的类成员方法: menu定义及介绍
  • Android动态添加menu菜单的简单方法
  • java命名空间java.awt类menu.accessibleawtmenu的类成员方法: menu.accessibleawtmenu定义及介绍
  • Fancy Sliding Tab Menu
  • java命名空间java.awt类systemcolor的类成员方法: menu定义及介绍
  • Animated Outline Menu
  • java命名空间javax.swing.plaf.synth类region的类成员方法: menu定义及介绍
  • Struts Menu
  • java命名空间javax.accessibility类accessiblerole的类成员方法: popup_menu定义及介绍
  • CSS Dock Menu
  • java命名空间javax.accessibility类accessiblerole的类成员方法: menu定义及介绍
  • jQuery Multi Level horizontal CSS Menu
  • java命名空间javax.accessibility类accessiblerole的类成员方法: menu_bar定义及介绍
  • jQuery 菜单插件 Square Menu
  • java命名空间javax.accessibility类accessiblerole的类成员方法: menu_item定义及介绍
  • QuickAccess Menu
  • java命名空间javax.swing.text.html类html.tag的类成员方法: menu定义及介绍
  • jQuery Horizon Menu Plugin
  • java命名空间javax.swing.plaf.basic类basicmenuui.changehandler的类成员方法: menu定义及介绍
  • jQuery可折叠菜单 Accordion Menu script
  • java命名空间java.awt类systemcolor的类成员方法: menu_text定义及介绍
  • jQuery 下拉菜单插件 menu-aim


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3