不幸的是,LILO 不支持引导期间的交互式配置,所以,只能在 lilo.conf 中或运行 /sbin/lilo 时指定选项。
关于第一次尝试 LILO 的最后一点建议是:我发现使用软盘引导磁盘比使用硬盘实现 LILO 配置更为安全。为此,必须在 lilo.conf 文档中使用 boot=/dev/fd0 替换 boot=/dev/hda。那样,假如弄乱了 lilo.conf 文档 中的任何配置,都能够取出引导磁盘并像先前相同引导到 Linux。当使用软盘进行引导一切正常以后,能够将 lilo.conf 修改回 boot=/dev/hda,然后最后一次运行 /sbin/lilo 来上传修改。
[color=blue]
GNU GRUB
[/color]
近来,GRand Unified Boot loader(通常称为 GRUB)似乎要取代 LILO 在引导加载程式方面的统治地位。GNU GRUB 基于原来的 GRUB 程式(最初由 Erich Stefan Boleyn 所创建),正在由免费软件基金会(Free Software Foundation)进行积极研发。
使用 GRUB 作为引导加载程式
和使用 LILO 相同,使用 GRUB 作为活动的引导加载程式所需要的步骤,取决于是安装全新的 OS 还是已安装了 Linux 并计划转移到 GRUB。 假如是进行全新安装,那么能够直接跳转到 配置 GRUB 那一节。假如已安装了某个 Linux 发行版,那么通常能够选择 安装并配置 GRUB(并能够将机器引导到新的 Linux 安装)。
计划迁移到 GRUB 的当前 Linux 用户需要去获得最新版本的 GRUB(见 参考资料)。同样, 和 LILO 相同,在做任何其他事情之前,需要在手边准备一张 Linux 引导盘。使用交互模式(后面将描述)则无需这张磁盘, 但是最好拥有一张以备急需时使用。将 LILO 安装到系统中之后,让他接管 MBR 很简单。以 root 用户身份输入:
# /boot/grub/grub
这样将加载一个类似于 BASH 的命令提示符,能够在这里使用 GRUB 命令:
grub>; install (hd1,3)/boot/grub/stage1 (hd0) (hd1,3)/boot/grub/stage2 p (hd1,3)/boot/grub/menu.conf
这个命令使用了 GRUB 安装命令,需要为他给出第一阶段映像的位置连同 MBR 的位置(install (hd1,3)/boot/grub/stage1 (hd1))。 也要给出第二阶段映像的位置((hd1,3)/boot/grub/stage2)。最后,可选项 p (hd1,3)/boot/grub/menu.conf 告诉 GRUB GUI 菜单配置文档的位置。
在前面的示例中,hd1 是我的 Linux Disk,hd0 是我的 Windows 磁盘。这样将使用当前 GRUB 默认值,并抹去 MBR 中当前任何内容(请阅读 配置 GRUB,以确保能够按预期引导起来)。
配置 GRUB
GRUB 的配置都是通过位于 /boot/grub/grub.conf 的一个配置文档来完成的。清单 2 给出了一个示例配置,使用的是我的家用机器,支持 Linux 和 Windows 机器的双重引导:
清单 2. grub.conf 示例文档
default=0
timeout=10
splashimage=(hd1,3)/grub/splash.xpm.gz
password --md5 $opeVt0$Y.br.18LyAasRsGdSKLYlp1
title Red Hat Linux
password --md5 peVt0$Y.br.18LyAasRsGdSKLYlp1
root (hd1,3)
kernel /vmlinuz-2.4.18-14 ro root=LABEL=/
initrd /initrd-2.4.18-14.img
title Windows XP
password --md5 peVt0$Y.br.18LyAasRsGdSKLYlp1
rootnoverify (hd0,0)
chainloader 1
清单 2 中的选项:
引用:
default= 选项通知 GRUB 在超时之后默认使用哪个映像进行引导。这一选项和 grub.conf 文档中的某个映像相关联。 0 表示指定了第一个,1 表示指定了第二个,依次类推。假如没有在配置文档指定此选项,那么他将引导文档中指定的第一个映像。
timeout= 是在自动引导默认 OS(在本例中是 Red Hat Linux)之前引导提示会等待多少秒。
splashimage= 是用作 GRUB GUI 背景的图片所在的位置。
password 选项指定了使用 MD5 加密的口令,用于访问 GRUB 的交互式引导选项。注意,这不会阻止用户选择 引导已定义的 OS;需要为 每一个 -title 配置他。为了生成一个 md5 口令, 请运行 GRUB 所附带的 grub-md5-crypt 工具(以 root 身份)。他将提示输入一个希望加密的口令。然后输出使用 MD5 加密的口令。将这个口令拷贝到 grub.conf 中 password -md5 之后,但是要在同一行上。通常这个口令能够配置为 root 口令,因为无论如何也只有 root 才能够读取 grub.conf 文档。
title 标明了在运行期间能够从用户界面引导的具体 OS。 和 LILO 不同,在这个名称中能够有空格。
password 的配置方式和前面的 password 相同。假如计划和其他用户共享此机器,那么不要将这个口令配置为 root 口令。
root 告诉 GRUB OS 文档系统的实际位置。可见,GRUB 引用介质的方式和 LILO 不同。在 LILO 示例中, /dev/hdb3 是第二块硬盘中的第三个分区。Grub 将此硬盘引用为(hd1,3),即第二块硬盘的第三个分区(disk 0 是第一块硬盘)。
kernel:vmlinuz-X.X.XX-XX 是 root 目录中默认引导映像的名称。
initrd:initrd-X.X.XX-XX.img 是 root 目录中默认 initrd 映像的名称。
title 和任何其他 title 选项相同。
password:见其他口令选项。
rootnoverify 告诉 GRUB 不要尝试去改变 OS 的 root。这样,当文档系统不被 GRUB 所支持时,不会出现引导错误。
chainloader 1 告诉 GRUB 使用一个链式加载程式来加载这个 OS,加载 Windows 时需要这个选项。
在 grub.conf 文档中能够使用很多其他参数,但是清单 2 中的参数就足以让机器可用了。 要获得关于 grub.conf 的这些连同其他参数的进一步资料,请参考手册页(man grub.conf)。
和 LILO 的配置文档不同,grub.conf 会在引导时被读取,当被修改时不必去更新 MBR。
初始引导过程
和 LILO 类似,当 GRUB 初始加载时,从 MBR 加载第一阶段程式。加载后,他进入第一阶段和第二阶段引导加载程式之间的中间阶段(为了方便讨论,可称为第 1.5 阶段)。 之所以存在第 1.5 阶段,是为了能够对 /boot/grub 中的 GRUB 配置文档进行常规的文档系统访问,而不是去访问磁盘块。然后进入引导加载程式的第二阶段,GRUB 加载 grub.conf 文档。
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




