在这篇技巧文章中,我们使用 Red Hat 的一个老版本,因为我们曾尝试构建与客户完全相同的系统。因此,这里使用的 Red Hat 版本是几年前的,并且使用较早的 2.2 内核。较新的 Linux 内核处理多引导的方式有所不同。出于安全性原因,在任何情况下,您应尽可能升级到较新的 Linux 2.4(.x) 内核版本,则这样做是明智的。另外,现在大多数 Linux 安装都提供 GRUB 来替换 LILO 或作为对它的补充。这一特性提供了处理 Linux 多引导功能的更先进方法。这样,如果您正在使用不用 LILO 的较新版本,则下列技巧可能不会十分有用 ― 但是如果您的版本使用 LILO,则它是不可缺少的。
Red Hat 双引导:安装指令
当您准备开始本过程时,首先关闭系统,然后重新启动它。接着将 Red Hat Linux CD 放入驱动器。
Red Hat Linux 安装例程将指导您完成一个很简单的安装过程。您将必须完成一些基本的系统配置,如选择缺省语言以及键盘类型等。输入正确的信息,直到出现“Partitions”屏幕。
当该屏幕出现时,单击“add”按钮,然后选择“Linux Native”作为操作系统的类型。对于“size”,输入 16(兆字节),然后选择 /boot 作为分区类型。下面给出了其余的配置,并且对于特定分区,可以通过重复上面的指令来完成配置。
/boot sda1 16M Linux native
/ sda5 1024M Linux native
swap sda6 256M Linux swap
/var sda7 200M Linux native
/tmp sda8 200M Linux native
请注意,这些目录位置是针对 SCSI 驱动器的。对于 IDE 驱动器,只要简单地用 h 替换 sdal 中的 s(让您的 hda1 作为 /boot 驱动器,让 hda5 作为 root 驱动器等)。
还请注意,上面使用的大小适合于我们的硬件 ― 它们并不是强制性的。您可以灵活地选择适合您硬件的任何大小,特别是因为当前较新的硬件可以支持各种配置。但是,您并不要将太多空间分配给“/boot” 分区,因为大部分空间将最终被浪费 ― 在最新的硬件上,您将可能想要一个比我们的引导分区还小的引导区。同样,对于其它分区可以使用其它大小。
安装标记 2
现在,您准备安装 Linux 内核的第二个实例了。遵循下列简单原则:
再次将 lilo 安装在主引导记录(Master Boot Record (MBR))上 使用线性方式(对于 SCSI 驱动器严格需要) 使几个内核参数保持为空初始安装分区应该仍然标记为“Not Set”。将它们保留为 Not Set,然后通过单击“add”并按照上面指定的那样安装以添加 5 个新的分区。只需要一直 添加新分区,不需要删除或编辑以前安装的分区。
其余安装保持不变。可以使用您喜爱的任何名称(我们使用 linux2)。但是,如果标号有多个字,请确保用引号将它们括起来(即,如果想保留空格,请使用“Linux 2”)。当然,请确保使用与第一个不同的名称来标记第二个安装。
安装之后,系统重新引导并出现提示。按 Tab 键:这会显示第二个 Linux 安装的标号。输入“linux2”(或者您为第二个映象起的任何名称),然后按 Enter,这将调出您刚安装的第二个 Linux 系统。
编辑 lilo.conf
接下来,我们将编辑 LILO(Linux 装入器)配置文件 lilo.conf,以添加一个记录告诉 Linux 关于我们完成的第一个安装的信息。
要做到这一点,转至 /etc 目录然后用您喜欢的编辑器打开 lilo.conf 文件(您可能想首先建立一个备份副本,只是为以防万一)。lilo.conf 代码类似于:
boot=/dev/sda #this points to the boot device
timeout=300 #if no activity in the specified time, load default image
linear
prompt
Default="Linux2" #Linux1 will be displayed at the prompt
Vga=normal #video mode
read-only
map=/boot/map
Install=/boot/boot.b
image=/boot/vmlinuz=2.2.14-5.0 #location of boot image
Label="Linux2" #label
initrd=/boot/initrd-2.2.14-5.0
Root=/dev/sda10 #location of root partition
注:计算机忽略注释(由 # 或者井号开头)。这里包含它们以便您能正确了解每一行的用途 ― 不必在您系统上的 lilo.conf 文件中包含这些注释,除非想保留它们以供参考。
同样,如果使用 IDE 驱动器,记住使用 hda 来替换 sda。
配置 LILO 的另一种方法
这里是一种编辑 lilo.conf 文件的替代方法。
打开一个终端窗口,然后转至“/root”目录并输入 linuxconf 。这会把您带到 Linux 命令窗口,在那您可以配置系统。 向下滚动直到 Boot mode。在“boot mode”下,您应该看见配置 LILO 的选项。选择菜单上的第二项“Configure LILO Linux configurations”,然后单击“LILO Linux configurations”选项卡。 单击“Add”。然后可以添加其它 Linux 引导分区和内核文件的位置。如果不确定要在每个字段添加什么信息,在输入前,请查看已经列出的内容。看一下上面的 lilo.conf 文件,您会注意到它属于标号为 linux2 的 Linux 安装,即,安装过程期间我们安装的第二个。现在,要使 LILO 双引导安装在 /sda5(对于 IDE 驱动器是 /hda5)分区上的第一个 Linux 实例,则紧接着最后一行添加下列内容:
image=/boot/vmlinuz=2.2.14-5.0
label="Linux1"
initrd=/boot/initrd-2.2.14-5.0
root=/dev/sda5
因此,编辑以上代码之后,最终的文件应该类似于:
boot=/dev/sda
timeout=300
linear
prompt
default="Linux2"
vga=normal
read-only
map=/boot/map
install=/boot/boot.b
image=/boot/vmlinuz=2.2.14-5.0
label="Linux2"
initrd=/boot/initrd-2.2.14-5.0
root=/dev/sda10
image=/boot/vmlinuz=2.2.14-5.0
label="Linux1"
initrd=/boot/initrd-2.2.14-5.0
root=/dev/sda5
请确保如以上最后一行所完成的那样指定 root 路径,― 这一点非常重要。还要确保列出您在安装期间使用的标号。
现在保存文件,然后在提示符上处输入命令 lilo 。这将重新编译该文件,然后保存更新的配置。
注意:image/kernel 对于这两个安装是相同的(/boot/vmlinuz=2.2.14-5.0)。由于我们正在进行的是完全相同的系统的双引导,正在从同一张 CD 上安装,所以有相同的映象文件。如果正在安装不同的发行版,则这些文件将会不同。
现在我们快要完成了。接下来,您想从终端发出重新引导命令: shutdown -r now 。当计算机重新启动时,出现 LILO 提示。按 Tab 键,您会看到:
Linux2Linux1
Boot:_
在 boot 提示符上,输入 Linux1 以引导进我们完成的第一个 Linux 安装。引导起来后,需要进入 其lilo.conf 文件 ― 这与我们刚为第二个映象编辑的配置文件非常相似,唯一的区别是缺省映象是 /sda5(如果有 IDE 驱动器,则为 /hda5),带有标号“linux1”。我们将象对待另一个文件一样编辑这个文件,在结尾处添加下列行:
image=/boot/vmlinuz=2.2.14-5.0
label="Linux2"
initrd=/boot/initrd-2.2.14-5.0
root=/dev/sda10
这样,整个文件的代码将类似于:
boot=/dev/sda
timeout=300
linear
prompt
default="Linux1"
vga=normal
read-only
map=/boot/map
install=/boot/boot.b
image=/boot/vmlinuz=2.2.14-5.0
label="Linux1"
initrd=/boot/initrd-2.2.14-5.0
root=/dev/sda5
image=/boot/vmlinuz=2.2.14-5.0
label="Linux2"
initrd=/boot/initrd-2.2.14-5.0
root=/dev/sda10
保存该文件,然后通过在命令提示符上输入 lilo 来重新编译它。再次发出重新引导命令;系统启动后,还会提示您选择 LINUX 引导。这次按下 Tab 键时,您将看到以下列表:
LINUX BOOT:
Linux1Linux2
Boot:_
这就完成了!您刚构建了一个双引导 Red Hat Linux 系统。要在不同分区上安装任意多的映象或者安装应用程序软件的不同版本(正如我们对 WebSphere Application Server 和 DB2 所做的那样),现在这对您来说已经是小菜一碟了。
(出处:http://www.sheup.com)