建立 menu.lst
文件
要创建菜单,只需在 /boot/grub
中创建一个简单的文本文件 menu.lst
。
如果将它放在正确位置,它将在 root GRUB
驱动器的 stage1
和 stage2
文件的旁边。
这里是一个样本 menu.lst
文件,可以将它作为一个您的菜单的基础:
default 0
timeout 30
color white/blue blue/green
title=Boot Linux
root (hd0,4)
kernel /boot/bzImage root=/dev/hda5
title=Boot Linux using initrd
root (hd0,5)
kernel /boot/bzImage root=/dev/loop0 init=/initdisk.gz
initrd /initdisk.gz
title=Windows NT
root (hd0,3)
chainloader +1
GRUB 最好的优点之一就是其强健的设计 – 在不断使用它时请别忘了这点。
如果更新内核或更改它在磁盘上的位置,不必重新安装 GRUB。
事实上,如有必要,只要更新 menu.lst
文件即可,一切将保持正常。
更改 menu.lst
文件
只有少数情况下,才需要将 GRUB
引导装入器重新安装到引导记录。
首先,如果更改GRUB root
分区的分区类型(例如,从ext2
改成ReiserFS),则需要重新安装。
或者,如果更新
/boot/grub中的
stage1和
stage2文件,由于它们来自更新版本的
GRUB`,
很有可能要重新安装引导装入器。其它情况下,可以不必理睬!
ubuntu 10.10
以后的版本,如果修改了grub.cfg
文件,需要执行 update-grub
命令才能起作用。
在Ubuntu 10.04
中,并没有menu.lst
文件,文件名已经变成grub.cfg
。更改操作如下:
- 备份原文件为grub.cfg.bak
$sudo cp /boot/grub/grub.cfg /boot/grub/grub.cfg.bak
- 修改启动顺序
$sudo gedit /boot/grub/grub.cfg
在 打开顶文件中找到
set default="0"
,可以看出默认是第一项 (从0开始计数)。 然后找到以menuentry
开头的所有行,下面是我顶电脑上该文件的内容,一共7行, 最后一行是Windows XP
项。以我的文件内容为例,我只要set default="6"
(注意:从0开始计数) 就可以把Windows XP
改为默认启动系统。menuentry 'Ubuntu,Linux 2.6.32-22-generic' menuentry 'Ubuntu,Linux 2.6.32-22-generic (恢复模式)' menuentry 'Ubuntu,Linux 2.6.32-21-generic' menuentry 'Ubuntu,Linux 2.6.32-21-generic (恢复模式)' menuentry "Memory test (memtest86+)" menuentry "Memory test (memtest86+, serial console 115200)" menuentry "Microsoft Windows XP Professional (on /dev/sda1)"