Chinaunix首页 | 论坛 | 博客
  • 博客访问: 500200
  • 博文数量: 110
  • 博客积分: 3971
  • 博客等级: 中校
  • 技术积分: 1175
  • 用 户 组: 普通用户
  • 注册时间: 2006-06-20 23:27
文章分类

全部博文(110)

文章存档

2015年(2)

2014年(1)

2013年(1)

2011年(9)

2010年(28)

2009年(12)

2008年(13)

2007年(23)

2006年(21)

我的朋友

分类: LINUX

2006-06-21 17:22:54

  要理解 GRUB 最重要的就是它标识硬盘和分区的方法。你的 Linux 分区 /dev/hda1 在GRUB下被标识为 (hd0,0) 。 硬盘和分区是从 0 开始标识而不是 1。
  假设你有个硬盘是 /dev/hda, 一个 cdrom 是/dev/hdb, 一个刻录机是 /dev/hdc, 第二个硬盘是 /dev/hdd 没有 SCSI 设备, /dev/hdd7 被翻译成 (hd1,6)。 这看起来真有点复杂, 但 GRUB 支持 TAB 键补全功能,当你有很多硬盘/分区的时候,你可以按 TAB 键来让系统列出所有的 硬盘/分区。要体会一下这个功能,让我们来安装 GRUB。
  安装 GRUB 最简单方法就是键入 grub :
# grub
现在你能看到一个 grub> 提示符 。
现在,你需要键入正确的命令来把 GRUB 启动数据安装到你的硬盘上。
在下面的例子里,我们把 GRUB 启动数据安装到硬盘的引导区(MBR)中,这样电脑开机后就会直接运行 GRUB。我是这样做的:

安装 GRUB 到 MBR:
grub> root (hd0,0) (指定启动分区)
grub> setup (hd0) (指定安装 GRUB 到 MBR)

安装 GRUB 到其它分区:
如果你不想把 GRUB 安装到 MBR,你可以将它安装到其它分区上。
grub> root (hd0,0) (指定启动分区)
grub> setup (hd0,4) (指定安装 GRUB 到 /dev/hda5)
grub> quit
第一个 root ( ) 命令是告诉 GRUB 你的系统启动分区的位置 ,在我们的例子中是 /dev/hda1 ( GRUB 所理解的 (hd0,0) )。
然后第二个 setup ( ) 命令是告诉 GRUB 安装到哪里。
在我们的例子里,我们要将 GRUB 安装到 MBR,也就是 /dev/hda (GRUB所理解的 (hd0))。
如果你使用其它启动程序,而想把 GRUB 作为第二启动程序,你可以把 GRUB 安装到其它指定的分区上。
当 GRUB 安装完成,键入 quit 退出 GRUB。

注释:
在 GRUB 里, TAB 补全功能的是一个很方便的工具, 当你键入 root (
然后按下 TAB 键, 你将会看到所有的分区列表。 按下 TAB 后,就会自动帮你你改为 root (hd.
再按一次, grub 将列出可用硬盘就会变成 root (hd0, 然后你可以自己输入或是按下 TAB 这样就可以让 grub

我们还得建立 /boot/grub/grub.conf文件,这样当系统重启时我们才能看到漂亮的 GRUB 启动菜单。操作如下:
再次列出可以使用的分区。

重要:

为了保证 GRUB 的向上兼容(backwards compatibility),要为 grub.conf 建立一个链接: menu.lst。你可以键入 ln -s /boot/grub/grub.conf /boot/grub/menu.lst
grub.conf 文件
default 0
timeout 30
splashimage=(hd0,0)/boot/grub/splash.xpm.gz

# 如果你是自己编译内核,使用下面例子:
title=My example Gentoo Linux
root (hd0,0)
kernel (hd0,0)/boot/bzImage root=/dev/hda3

# 如果你是使用 genkernel 编译的内核, 使用下面的例子:
title=My example Gentoo Linux (genkernel)
root (hd0,0)
kernel (hd0,0)/boot/kernel-KV root=/dev/hda3
initrd (hd0,0)/boot/initrd-KV

# 下面是使用 GRUB 双重启动例子
title=Windows XP
root (hd0,5)
chainloader (hd0,5)+1

警告: 替换 KV 为你的内核版本。

注释: (hd0,0) 中不能有任何空格。

重要: 如果你先前曾为你的刻录机设置了 SCSI emulation ,那么要在 grub.conf 文件中的内核一行加入 hdx=ide-scsi 选项 ("hdx" 代表刻录机设备位置)。

注释: 上面的 (hd0,0) 要指向你的启动分区。(在我们的例子里是 /dev/hda1), /dev/hda3 应该指向根文件系统。 (hd0,5) 保存 Windowd 的启动数据。

注释: 内核镜像文件的路径和启动分区是相关的。如果你的启动分区和根分区是分开的,那么 grub.conf 文件 中应该是 /bzImage

       如果你需要为装载内核增加额外的参数,那么可以直接将参数加到 kernel 命令后面。 比如你可以加上 gentoo=nodevfs 选项来关闭 devfs (如果你不确定,不推荐这么做)。








阅读(555) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~