📄 553.html
字号:
GRUB 命名约定<br>
到目前为止,您可能会感到一点困惑,因为 GRUB 所使用的硬盘/分区命名约定与
Linux 使用的命名约定不同。在 Linux 中,第一个硬盘的第五个分区称作 "hda5"。而
GRUB 把这个分区称作 "(hd0,4)"。GRUB 对硬盘和分区的编号都是从 0 开始计算。另外,
硬盘和分区都用逗号分隔,整个表达式用括号括起。现在,回来看一下 GRUB 提示,可以
发现如果要引导Linux硬盘hda5,应输入 "root (hd0,4)"。如果已经明白了 GRUB 硬盘/
分区命名,您也许要调整当前 root 命令行,以使它指向保存 Linux 内核的分区。<br>
按以下格式输完命令,然后按 Enter 键:<br>
grub> root (hd0,4) (hit enter)<br>
Filesystem type is reiserfs, partition type 0x83<br>
<br>
装入内核<br>
<br>
现在已安装了 root 文件系统,到装入内核的时候了。在 GRUB 提示中,依次输入
"kernel"、空格、到内核的路径、空格、内核参数,如 root 参数(GRUB 将自动插入适
当的 "mem=" 参数)。我在我的系统中输入:<br>
grub> kernel /boot/bz2.4 root=/dev/hda5<br>
[Linux-bzImage, setup=0x1200, size=0xe1a30]<br>
请留意 "root=" 内核参数,它非常重要。它应该指向保存 root 文件系统的 Linux
分区。您也许要写下到目前为止输入的命令,这样在教程后面讲述如何创建 GRUB 引导菜
单时,就可以迅速找到它们。<br>
<br>
Root,内核,引导!<br>
您已经安装了 root 文件系统并装入了内核。现在,可以引导了。只要输入 "boot",
Linux 引导过程就将开始。<br>
<br>
重新调查引导软盘<br>
如果一切正常,就可以使用使用 GRUB 引导盘来引导当前 Linux 发行版。如您所见,
GRUB 是功能非常强大的引导装入器,它让您可以随意动态配置以进行引导。我将向您介
绍如何创建 GRUB 引导菜单,这样就可以从菜单中进行 OS 选择,而不是输入三行命令来
引导 Linux。但在动手之前,现在是深入了解 GRUB 幕后是如何工作的好时机。我将说明
引导盘引导过程的工作原理,这样您就可以对 GRUB 有一个更好的评价和了解。<br>
<br>
两阶段过程<br>
要制作引导软盘,需要做两件事--将文件复制到软盘的ext2文件系统的/boot/grub目
录中,运行GRUB的安装程序。运行GRUB安装程序时,GRUB将"stage 1"装入器安装到软盘的
引导记录中。它还将stage 1装入器配置成从ext2文件系统直接装入stage2。通常,GRUB通
过在包含stage2数据的软盘上创建一列块来完成此操作,这样stage1装入stage2时不必知
道ext2文件系统的任何情况。<br>
但是,大多数情况下,GRUB在安装完stage1之后,会立即将stage1.5装入器安装到引
导记录中。这个特殊的stage1.5允许无需使用原始块列表就能从ext2文件系统装入stage2,
却要更灵活的标准基于路径的方法。GRUB 理解文件系统结构的这一能力使GRUB比LILO更
强壮。例如,如果正好在整理引导盘文件系统的碎片,stage1就可以找到stage2(归功于
ext2 stage1.5)。而LILO就不能完成此项操作。因为LILO只能依赖于映射文件,每次更
新内核或在磁盘上物理移动数据时,即使不更改路径,也需要重新运行它。<br>
<br>
阶段 1、1.5 和 2 第 3 页<br>
您也许会想知道:如果使用 FAT 而不是 ext2 文件系统创建引导盘,GRUB 是否可以
工作。是的,它可以工作,因为在输入 "setup (fd0)" 时,GRUB 会安装与 root 文件系
统类型匹配的 stage1.5。即使没有没有空间可以安装 stage1.5,GRUB 仍可以通过追溯
到更原始的块列表,来装入stage2<br>
<br>
搜索和恢复<br>
在继续讨论之前,先研究一个与引导软盘相关的实用提示。由于 GRUB 的交互式性质,
它为恢复软盘生成了一个很好的引导装入器。但是,如果将好的内核复制到引导盘上,那
它就更好了。那样,即使硬盘上的内核坏了或者被意外删除了,也可以追溯到引导盘内核,
并启动和运行系统。要将备用内核复制到引导盘,执行以下操作:<br>
# mount /dev/fd0 /mnt/floppy<br>
# cp /path/to/bzImage /mnt/floppy/boot<br>
# umount /dev/fd0<br>
现在,软盘已包含备用内核,可以在 GRUB 中使用它来引导 Linux 发行版,操作如下:<br>
grub> root (fd0)<br>
grub> kernel /boot/bzImage root=/dev/hda5 (将 /dev/hda5 更改成想要引导的分区名称)<br>
grub> boot<br>
<br>
硬盘引导<br>
好,现在如何将 GRUB 安装到硬盘上?这个过程几乎与引导盘安装过程一样。首先,
需要决定哪个硬盘分区将成为 root GRUB 分区。在这个分区上,创建 /boot/grub 目录,
并将 stage1 和 stage2 文件从 /usr/share/grub/i386-pc 复制到该目录中。可以通过
重新引导系统并使用引导盘,或者使用驻留版本的 GRUB 来执行后一步操作。在这两种情
况下,启动 GRUB,并用 root 命令指定 root 分区。例如,如果将 stage1 和 stage2
文件复制到 hda5 的 /boot/grub 目录中,应输入 "root (hd0,4)"。现在,只差一步。<br>
接着,决定在哪里安装 GRUB -- 在硬盘的 MBR,或者如果与 GRUB 一起使用另一个
“主”引导装入器,则安装在特定分区的引导记录中。如果安装到 MBR,则可以指定整个
磁盘而不必指定分区,如下(对于 hda):<br>
grub> setup (hd0)<br>
如果要将 GRUB 安装到 /dev/hda5 的引导记录中,应输入:<br>
grub> setup (hd0,4)<br>
现在,已安装 GRUB。引导系统时,应该立即以 GRUB 的控制台方式结束(如果安装到
MBR)。现在,应创建引导菜单,这样就不必在每次引导系统时都输入那些命令。<br>
<br>
引导菜单<br>
<br>
要创建菜单,只需在 /boot/grub 中创建一个简单的文本文件 menu.lst。如果将它
放在正确位置,它将在 root GRUB 驱动器的 stage1 和 stage2 文件的旁边。这里是一
个样本 menu.lst 文件,可以将它作为一个您的菜单的基础:<br>
default 0<br>
timeout 30<br>
color white/blue blue/green<br>
<br>
title=Boot Linux<br>
root (hd0,4)<br>
kernel /boot/bzImage root=/dev/hda5<br>
<br>
title=Boot Linux using initrd<br>
root (hd0,5)<br>
kernel /boot/bzImage root=/dev/loop0 init=/initdisk.gz<br>
initrd /initdisk.gz<br>
<br>
title=Windows NT<br>
root (hd0,3)<br>
chainloader +1<br>
<br>
我将在以下的屏面中说明 menu.lst 格式。<br>
<br>
理解引导菜单<br>
引导菜单很容易理解。前三行设置缺省菜单项(项目号 0,第一个)、设置超时值(30
秒),并选择整个菜单的一些颜色。<br>
接着的三行配置 "Boot Linux" 菜单项。要创建手工引导命令系列之外的菜单项,只要添
加一行 "title=" 作为第一行,并从最后一行中除去 "boot" 命令(GRUB 会自动添加这
个命令)。<br>
接着的四行显示了如何使用 GRUB 来引导 initrd(初始 root 磁盘),如果您愿意的话。
现在,讨论最后三行……<br>
<br>
链式装入器<br>
<br>
这里是示例 menu.lst 的最后三行……<br>
title=Windows NT<br>
root (hd0,3)<br>
chainloader +1<br>
这里,我添加了一项来引导 Windows NT。要完成此操作,GRUB 使用了“链式装入器”。
链式装入器从分区 (hd0,3) 的引导记录中装入 NT 自己的引导装入器,然后引导它。这
就是这种技术叫做链式装入的原因 -- 它创建了一个从引导装入器到另一个的链。这种链
式装入技术可以用于引导任何版本的 DOS 或 Windows。<br>
<br>
GRUB 的弹性<br>
GRUB最好的优点之一就是其强健的设计 -- 在不断使用它时请别忘了这点。如果更新
内核或更改它在磁盘上的位置,不必重新安装 GRUB。事实上,如有必要,只要更新menu.lst
文件即可,一切将保持正常。<br>
只有少数情况下,才需要将GRUB引导装入器重新安装到引导记录。首先,如果更改GRUB
root 分区的分区类型(例如,从 ext2 改成 ReiserFS),则需要重新安装。或者,如果
更新/boot/grub中的stage1和stage2文件,由于它们来自更新版本的 GRUB,很有可能要重
新安装引导装入器。其它情况下,可以不必理睬!<br>
<br>
在这里只是介绍了 GRUB 的一部分。如需所有 GRUB 功能的完整描述,请阅读 GRUB 出色
的 GNU 文档。只要在 bash 提示中输入 "info grub" 就可以阅读该文档。<br>
希望fans喜欢本教程,喜欢 GRUB (Grand Unified Boot Loader) 的强大功能和灵活性!<br>
<br>
终于完成,天哪…………!@#$$#%$^%&^**^<br>
</FONT><br>
</TD>
</TR>
<TR>
<TD colSpan=2><FONT
class=middlefont></FONT><BR>
<FONT
class=normalfont>全文结束</FONT> </TD>
</TR>
<TR>
<TD background="images/dot.gif" tppabs="http://www.linuxhero.com/docs/images/dot.gif" colSpan=2
height=10></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></DIV></TD>
<TD vAlign=top width="20%"
background="images/line.gif" tppabs="http://www.linuxhero.com/docs/images/line.gif" rowSpan=2>
<DIV align=center>
<table class=tableoutline cellspacing=1 cellpadding=4
width="100%" align=center border=0>
<tr class=firstalt>
<td noWrap background="images/bgline.gif" tppabs="http://www.linuxhero.com/docs/images/bgline.gif" colspan=2 height=21>
<font class=normalfont><b>所有分类</b></font></td>
</tr>
<tr class=secondalt> <td noWrap width=27%> <font class=normalfont>1:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type1.html" tppabs="http://www.linuxhero.com/docs/type1.html">非技术类</a></font></td> </tr> </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>2:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type2.html" tppabs="http://www.linuxhero.com/docs/type2.html">基础知识</a></font></td> </tr> </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>3:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type3.html" tppabs="http://www.linuxhero.com/docs/type3.html">指令大全</a></font></td> </tr> </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>4:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type4.html" tppabs="http://www.linuxhero.com/docs/type4.html">shell</a></font></td> </tr> </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>5:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type5.html" tppabs="http://www.linuxhero.com/docs/type5.html">安装启动</a></font></td> </tr> </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>6:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type6.html" tppabs="http://www.linuxhero.com/docs/type6.html">xwindow</a></font></td> </tr> </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>7:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type7.html" tppabs="http://www.linuxhero.com/docs/type7.html">kde</a></font></td> </tr> </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>8:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type8.html" tppabs="http://www.linuxhero.com/docs/type8.html">gnome</a></font></td> </tr> </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>9:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type9.html" tppabs="http://www.linuxhero.com/docs/type9.html">输入法类</a></font></td> </tr> </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>10:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type10.html" tppabs="http://www.linuxhero.com/docs/type10.html">美化汉化</a></font></td> </tr> </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>11:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type11.html" tppabs="http://www.linuxhero.com/docs/type11.html">网络配置</a></font></td> </tr> </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>12:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type12.html" tppabs="http://www.linuxhero.com/docs/type12.html">存储备份</a></font></td> </tr> </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>13:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type13.html" tppabs="http://www.linuxhero.com/docs/type13.html">杂项工具</a></font></td> </tr> </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>14:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type14.html" tppabs="http://www.linuxhero.com/docs/type14.html">编程技术</a></font></td> </tr> </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>15:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type15.html" tppabs="http://www.linuxhero.com/docs/type15.html">网络安全</a></font></td> </tr> </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>16:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type16.html" tppabs="http://www.linuxhero.com/docs/type16.html">内核技术</a></font></td> </tr> </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>17:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type17.html" tppabs="http://www.linuxhero.com/docs/type17.html">速度优化</a></font></td> </tr> </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>18:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type18.html" tppabs="http://www.linuxhero.com/docs/type18.html">apache</a></font></td> </tr> </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>19:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type19.html" tppabs="http://www.linuxhero.com/docs/type19.html">email</a></font></td> </tr> </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>20:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type20.html" tppabs="http://www.linuxhero.com/docs/type20.html">ftp服务</a></font></td> </tr> </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>21:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type21.html" tppabs="http://www.linuxhero.com/docs/type21.html">cvs服务</a></font></td> </tr> </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>22:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type22.html" tppabs="http://www.linuxhero.com/docs/type22.html">代理服务</a></font></td> </tr> </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>23:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type23.html" tppabs="http://www.linuxhero.com/docs/type23.html">samba</a></font></td> </tr> </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>24:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type24.html" tppabs="http://www.linuxhero.com/docs/type24.html">域名服务</a></font></td> </tr> </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>25:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type25.html" tppabs="http://www.linuxhero.com/docs/type25.html">网络过滤</a></font></td> </tr> </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>26:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type26.html" tppabs="http://www.linuxhero.com/docs/type26.html">其他服务</a></font></td> </tr> </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>27:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type27.html" tppabs="http://www.linuxhero.com/docs/type27.html">nfs</a></font></td> </tr> </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>28:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type28.html" tppabs="http://www.linuxhero.com/docs/type28.html">oracle</a></font></td> </tr> </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>29:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type29.html" tppabs="http://www.linuxhero.com/docs/type29.html">dhcp</a></font></td> </tr> </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>30:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type30.html" tppabs="http://www.linuxhero.com/docs/type30.html">mysql</a></font></td> </tr> </table></td></tr><tr class=secondalt> <td noWrap width=27%> <font class=normalfont>31:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type31.html" tppabs="http://www.linuxhero.com/docs/type31.html">php</a></font></td> </tr> </table></td></tr><tr class=firstalt> <td noWrap width=27%> <font class=normalfont>32:</font> </td><td noWrap width=73%> <table width=100% border=0> <tr> <td><font class=normalfont><a href="type32.html" tppabs="http://www.linuxhero.com/docs/type32.html">ldap</a></font></td> </tr> </table></td></tr> </table>
</DIV></TD></TR>
<TR vAlign=top>
<TD width="80%">
<DIV align=center><BR>
</DIV>
</TD></TR></TBODY></TABLE></TD></TR>
</TABLE></TD></TR>
</TABLE>
<TABLE cellSpacing=0 cellPadding=4 width="100%" bgColor=#eeeeee
border=0><TBODY>
<TR>
<TD width="50%">
<P><FONT class=middlefont>版权所有 © 2004 <A
href="mailto:bjchenxu@sina.com">linux知识宝库</A><BR>
违者必究. </FONT></P>
</TD>
<TD width="50%">
<DIV align=right><FONT class=middlefont>Powered by: <A
href="mailto:bjchenxu@sina.com">Linux知识宝库</A> Version 0.9.0 </FONT></DIV>
</TD></TR></TBODY></TABLE>
<CENTER></CENTER></TD></TR>
</TABLE></CENTER></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -