linux的menu文件,linux下/grub/menu.lst的写法详解

linux中安装grub loader的方法总结:

1.如果是从其他 boot loader 转成 grub 时,得先使用 grub-install 安装 grub 配置文件;

2.开始编辑 menu.lst 这个重要的配置文件;

3.rub 来将主程序安装到系统中,如 MBR 的 (hd0) 或 boot sector 的 (hd0,0) 等等。

其中最重要的是menu.lst的写法

4)menu.lst第一种写法的总结和实践;

在这里,我们只说重要的,不重要的就一带而过了;

1]用fdisk -l ;df -lh ;more /etc/fstab来确认分区情况;

我们过fdisk -l ;df -lh ; more /etc/fstab 来确认/boot所在的分区,及Linux的根分区所在位置;

比如我们确认/boot和Linux的/分区同处一个分区;

[root@localhost ~]# df -lh

Filesystem            容量  已用 可用 已用% 挂载点

/dev/hda7              11G  9.2G  1.2G  90% /

/dev/shm              236M     0  236M   0% /dev/shm

然后我们/etc/fstab 中,查看/分所在的分区或分区标签是什么;

[root@localhost ~]# more /etc/fstab

# This file is edited by fstab-sync - see 'man fstab-sync' for details

LABEL=/                 /                       ext3    defaults        1 1

/dev/devpts             /dev/pts                devpts  gid=5,mode=620  0 0

/dev/shm                /dev/shm                tmpfs   defaults        0 0

/dev/proc               /proc                   proc    defaults        0 0

/dev/sys                /sys                    sysfs   defaults        0 0

LABEL=SWAP-hda1         swap                    swap    defaults        0 0

/dev/hdc                /media/cdrecorder       auto    pamconsole,exec,noauto,managed 0 0

经过上面的df -lh 和more /etc/fstab 的对照中得知,/boot并是独处一个分区,而是和/在同一个分区;这个Linux系统安装在/dev/hda7上,文件系统(此分区)的标签为LABEL=/ ,/boot也是处于/dev/hda7 ,/dev/hda7也可以说是 root (hd0,6);

2]查看内核vmlinuz的和initrd文件名的全称;

[root@localhost ~]# ls -lh /boot/vmlinuz*

-rw-r--r--  1 root root 1.6M 2005-06-03  /boot/vmlinuz-2.6.11-1.1369_FC4

[root@localhost ~]# ls -lh /boot/initrd*

-rw-r--r--  1 root root 1.1M 11月 26 22:30 /boot/initrd-2.6.11-1.1369_FC4.img

3]开始写menu.lst ;

我们根据上面所提到的,可以写成如下的样子;

dfault=0

timeout=5

title 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

也可以写成;

default=0

timeout=5

title FC4

root (hd0,6)

kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=/dev/hda7

initrd /boot/initrd-2.6.11-1.1369_FC4.img

注解:上面两个不同之处在于一指定Linux的根/所在的分区时,一个是用了文件系统的标签,另一个没有用标签;

2、menu.lst的写法之二,精简型;

本写法主要是把指定/boot所位于的所分区直接写入kernel 指令行;这样就省略了通过root (hd[0-n],y)来指定/boot所位于的分区;

1)第一种情况:/boot和Linux的/根分区在同一个分区;

有前面的那么多的讲解,menu.lst写法之二就好理解多了;也得分两种情况,咱们先把/boot并不是独处一个分区,而是和Linux的根分区处于同一个分区;我们以 4)menu.lst第一种方法的写法总结 的实例为例子;

default=0

timeout=5

title FC4x

kernel (hd0,6)/boot/vmlinuz-2.6.11-1.1369_FC4 ro root=/dev/hda7

initrd (hd0,6)/boot/initrd-2.6.11-1.1369_FC4.img

注解:

title FC4x 注:自己为这个Linux 起个简单的名,以title开头,然后一个空格,后面就自己发挥吧,FC4或FC4x都行;

kernel 空格 (hd0,6)/boot/vmlinuz-2.6.11-1.1369_FC4 空格 ro 空格 root=/dev/hda7

kernel 这行这样理解 kernel (boot所在的分区)/boot/内核文件件全称 ro root=Linux根所位于的分区或标签

initrd 空格 (hd0,6)/boot/initrd-2.6.11-1.1369_FC4.img

initrd 这行可以这样理解initrd (/boot所在的分区)/boot/内核文件名全称

2)第二种情况:/boot独立一个分区,和Linux的根分区不是同一个分区;

比如我们查看到df -lh 得到的是

[root@localhost ~]# df -lh

Filesystem            容量  已用 可用 已用% 挂载点

/dev/hda6              200M  120M  80M  60% /boot

/dev/hda7              11G  9.2G  1.2G  90% /

我们再进一行查看/etc/fstab 得知;

LABEL=/                 /                       ext3    defaults        1 1

LABEL=/boot             /boot                   ext3    defaults        1 2

所以我们应该写成如下的;

title FC4x

kernel (hd0,5)/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/

initrd (hd0,5)/initrd-2.6.11-1.1369_FC4.img

因为Linux的根分区是/dev/hda7,通过/etc/fstab和df -h的内容得知标签为 LABEL=/的分区就是/dev/hda7 ,所以有;

title FC4x

kernel (hd0,5)/vmlinuz-2.6.11-1.1369_FC4 ro root=/dev/hda7

initrd (hd0,5)/initrd-2.6.11-1.1369_FC4.img

在我的csnd空间中也有记载。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值