免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1099 | 回复: 0
打印 上一主题 下一主题

grub的配置的实例分析 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-04-04 15:07 |只看该作者 |倒序浏览

前提:安装Windows XP sp2 和Linux (Fedora 8) 双系统,并在安装Linux时安装了grub在硬盘的引导扇区MBR上。
grub的配置的实例介绍
下面我们来了解一下它的配置。在/boot目录我们一般会看到grub这个文件夹,这就是grub的安装目录。其中grub.conf是grub产生一个引导选择菜单以及设置一些选项。
在Fedora 下执行命令$ gedit /boot/grub/grub.conf 来查看grub.conf的内容,蓝色的grub.conf内容部分。
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,8)
#          kernel /vmlinuz-version ro root=/dev/sda11
#          initrd /initrd-version.img
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,8)/grub/splash.xpm.gz
hiddenmenu
title Fedora (2.6.24.3-50.fc8)
         root (hd0,8)
         kernel /vmlinuz-2.6.24.3-50.fc8 ro root=LABEL=/ rhgb quiet
         initrd /initrd-2.6.24.3-50.fc8.img
# title Fedora (2.6.24.3-34.fc8)
#       root (hd0,8)
#       kernel /vmlinuz-2.6.24.3-34.fc8 ro root=LABEL=/ rhgb quiet
#       initrd /initrd-2.6.24.3-34.fc8.img
title Windows XP sp2
         rootnoverify (hd0,1)
         chainloader +1  
配置选项解释:
以"#"开头的是注释行。我这里有两个操作系统,分别是Fedora 8和Windows XP sp2。其中,
timeout标识默认等待时间,我这设置为5秒,超过5秒用户还没作出选择的话,将自动选择默认的操作系统启动,这是由default来控制的,default后的数字表明第几个是默认的,这里0表示第一个,1表示第二个。(我这里默认的是Fedora (2.6.24.3-50.fc8))
title一项是设置操作系统的名称,grub不支持中文。splashimage一项指定grub界面的背景图片,有兴趣的朋友可以修改grub的背景。
root(hd0,8)标识从第一个硬盘,第9个分区来启动搜索引导内核。注意这儿的root与linux的root分区不同,grub的硬盘标识方法与linux的有点不同。在linux中,分区是由hdax(或sdax我的电脑就设别为sda),x是数字,第一个主分区为hda1,第二个主分区为hda2,第三个主分区为hda3,第四个主分区为hda4(硬盘只支持四个主分区有趣的是扩展分区可以理解为所以逻辑分区的总称>也会占用主分区的标示,一般会显示为hda2,或hda3);接下来是逻辑分区,第一个逻辑分区为 hda5,第二个逻辑分区为hda6……(注意逻辑分区一定是从hda5开始的,不管你有没有第三或四主分区)。而在grub中,是以(hdx,y)来标识的,如第一个主分区为(hd0,0)第一个逻辑分区为(hd0,1)依此类推。
linux系统下分区和windows下分区的对应关系
其中表中结果是通过Linux下#fdisk –l 查看的
Device Boot
Start
End
Blocks
Id
System
Windows 及盘符
/dev/sda1
1
8
64228+
de
Dell Utility
Dell电脑,显示为第一主分区
/dev/sda2 *
9
2061
16490722+
7
HPFS/NTFS
第二主分区 C
/dev/sda3
2062
14593
100663290
f
W95Ext'd (LBA)
扩展分区
/dev/sda5
2062
4612
20482843+
7
HPFS/NTFS
第一逻辑分区 D
/dev/sda6
4612
7161
20482843+
7
HPFS/NTFS
第二逻辑分区 E
/dev/sda7
7162
9711
20482843+
7
HPFS/NTFS
第三逻辑分区 F
/dev/sda8
9712
12936
25904781
7
HPFS/NTFS
第四逻辑分区 G
/dev/sda9
12937
12949
104391
83
Linux
Linux /boot目录
/dev/sda10
12950
13076
1020096
82
Linux swap / Solaris
Linux的交换分区
/dev/sda11
13077
14593
12185271
83
Linux
Linux的/目录
从上表可以清楚的找到windows xp的(C,D,E,F,G盘和linux的对应关系)

所以这儿root后面的实际上是你的/boot分区的内容,我的/boot是单独分区的不用在路径中加入/boot。
kernel /vmlinuz-2.6.24.3-50.fc8 ro root=LABEL=/ rhgb quiet。说明vmlinuz-2.6.24.3-50.fc8就是要载入的内核。后面的都是传递给内核的参数。
ro是以readonly的意思。initrd用来初始的linuximage,并设置相应的参数。
再来看一看windows的定义段吧。这里,我添加了一项来引导Windows XP sp2 。要完成此操作,GRUB使用了"链式装入器" (chainloader)。链式装入器从分区(hd0,1)的引导记录中装入winXP自己的引导装入器,然后引导它。这就是这种技术叫做链式装入的原因--它创建了一个从引导装入器到另一个的链。


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/65503/showart_517311.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP