- 论坛徽章:
- 0
|
Linux 下制作多重启动光盘
发言者:风云 发言时间:2003-03-10 02:57:46
作者:陈海如 本文选自:开放系统世界 赛迪网 2003年03月07日
对于一个管理着多台使用不同操作系统机器的管理员而言,如果有一张可以实现多重启动的光盘,将是一件非常方便的事情。下面将介绍可以在一张光盘上放置 10 个可启动的操作系统,以及与之相关的工具。
可启动光盘遵循的是 El Torrito 标准,关于这方面的解释可参见 http://www.cdpage.com/Compact_Disc_Variations/danaboot.html。对此我们不必了解太多,只需要知道一张光盘上可以装有多达 10 个操作系统,并且这张光盘可以在任何 BIOS 支持光盘启动的机器上使用。可启动的映像文件可以是 1.44MB 磁盘、2.88MB 磁盘或者是硬盘格式的。
准备可启动映像文件
映像文件是一个包含有磁盘或者软盘信息的文件,它有很多种类型,如果在 Linux 分区上使用 dd 命令 (假设 Linux 位于 /dev/hda1 分区),如下所示:
dd if=/dev/hda1 of=/my_image.file
那么,就会出现一个 my_image.file 的文件。
当然,并不是每一个映像文件都是可以启动的。这取决于它所包含的内容,所以在制作光盘前要先准备好一些 Linux或者 BSD 的磁盘映像文件。最简单的方法是从网上下载,具体链接如下所示:http://www.ibiblio.org/pub/Linux/system/recovery/。
从上述链接中下载的映像文件已经是可以启动的,就不用自己来创建映像文件。如果一定要自己制作映像文件,上述链接处可以下载到一些相应的工具,比如 Bootkit、CatRescue、SAR、disc-recovery-utils 等。这些工具可以创建启动的磁盘或者可启动的映像文件。
为了创建一个多重启动的光盘,我们需要一些文件,其中包含 fbsd-flp-1.0.3.bin (一个可启动的 FreeBSD 2.8MB 的磁盘映像)、tomsrtbt 或者从现有磁盘创建的映像。把 DOS 或者 Linux 软盘放入至驱动器中,并且输入以下命令:
dd if=/dev/fd0 of=boot.img bs=512 count=2880
另一个办法就是可以访问 http://freshmeat.net,并且在该网页搜索关键字“mini”,此时就会发现有很多小型 Linux 发行版。
http://www.ibiblio.org/pub/Linux/system/recovery/ 网址就包含有下载的软件包 (下面只列出了一部分):
◆ Bootkit-1.01.tar.gz
◆ CatRescue101E.tgz
◆ SAR-2.25.tar.gz
◆ banshee-linux.0.61.tar.bz2
◆ brd-2.0.tar.gz
◆ disc-recovery-utils-1.0.tgz
◆ fbsd-iso-1.0.3.bin.gz
◆ fspace.tgz
◆ genromfs-0.5.1.tar.gz
◆ mulinux-5r0.lsm
◆ mulinux-5r0.tgz
◆ picoboot-0.95.tar.gz
◆ rescue02.zip
◆ resque_disk-2.3.99-pre9-A.tgz
◆ rip-10.exe
◆ rip-51.iso.bin
◆ sash.tar.z
◆ tomsrtbt-2.0.103.ElTorito.288.img.bz2
◆ tomsrtbt-2.0.103.dos.zip
◆ trccs-0.8.1r2.iso.bz2
◆ trccs-0.8.1r2.tar.bz2
◆ trccs-0.8.1r2_boot_disk.img.bz2
◆ yard-2.1.tar.gz
◆ yard-prefabs-2.tgz
◆ zdisk-2.14.tar.gz
此外,还有一些可以下载可启动磁盘的站点:
LIAP (http://www.liap.eu.org) 在该站点中,有很多用于 1.44MB 软盘的映像文件。这些小系统中包含有各种各样的工具,并且其内核也经过剪裁,用于进行各种情形的灾难恢复。
Leka Rescue Floppy (http://leka.muumilaakso.org/) Leka Rescue Floppy 是一个小型的 1.44MB 发行版。
Tomsrtbt (http://www.toms.net/rb/) Tomsrtbt 是一个非常不错的应急恢复工具,也可以从该站点下载 2.88MB 映像文件。
此外,也可以下载可启动的 DOS 映像文件。比如,如果需要可以从 http://www.bootdisk.com 处下载 DOS 映像。该站点中包含有 DOS 5.0 至 DOS 6.22、Windows 95/98/Me 启动盘、DOS/Windows 9X/2000/XP 启动盘、Windows 95/98/Me - NT4 启动盘等。
创建 ISO 映像文件
首先,看一看磁盘可启动映像文件和 ISO 文件刻录到 CD 上时的区别。从可启动的磁盘映像文件可创建 ISO 映像文件。
1. 使用以下命令从可启动的磁盘创建一个映像文件
dd if=/dev/fd0 of=/my_image.img
或者从上文介绍的站点下载一些可启动的映像文件。在 Linux 系统上创建一个目录,比如:/CD,然后把映像文件拷贝至目录之下 (记住,可启动的映像文件不可多于 10 个),并且确保所使用的文件名遵循 8.3 格式,即文件名不超过 8 个字符,扩展名不超过 3 个字符。这样做只是为了和下面将要使用的 makebt.exe 程序相兼容。
2. 如果想要使用 CD 上的空闲空间 (10 个映像文件实际上只需要 14MB 的磁盘空间),可以在子目录下 (比如 /CD/Soft)放置一些其它的工具。有关如何访问 CD 上信息的内容将在后面介绍。
3. 从 /CD 目录下运行下面的命令:
# mkisofs -b image.img -c boot.cat -J -l -R -r -o /cd.iso /CD
这样,“boot.cat”或者“boot.catalog”文件将被自动创建,所以不必在 /CD 目录中自己创建它们,只要它位于 /CD 目录之下,可以使用任意一个映像文件的名字。包含在上述命令中的文件是将要从 CD 启动的文件,该文件的大小应该是 1.44MB 或者 2.8MB。
4. 运行完上述命令后,在根目录下将会有一个 cd.iso 文件 (/cd.iso)。检查这个文件并且挂载它时 (mount/cd.iso/mnt -o loop),ISO 文件的内容就可在被挂载的目录中看到。如果把这个 ISO 文件刻录至光盘,它将可以启动,且只能从映像文件启动。
5. 上述方法制作出来的启动盘只能从一个映像文件启动,所以我们需要编辑 ISO 映像文件来制作一个可实现多重启动的光盘,为此要在选单中加入一些其它的映像文件 (0、1、2、3 等)。这样当从光盘启动时,就可以有从 0 至 10 选项的多重启动选单。只要我们选择相应的数字,就会启动相应的操作系统。
6. 编辑完后,就可以进行光盘刻录。
其实编辑一个 ISO 映像文件比较复杂,没有必要自己来做,我们可以从网上下载一些免费的程序。此处使用一个名为 makebt.exe 的程序,该文件可以从网上获得 (http://www.tankred.sk/~juro/freebsd/makebt.zip)。
你可以在 DOSEMU、BOCHS (《开放系统世界》2002年第9期详细介绍过这两个模拟器)模拟器下运行 makebt .exe;也可以制作一个 FreeDOS 启动盘来启动系统,然后使用 makebt.exe 工具。如果你的机器上没有 DOS 分区,那么最好还是使用 DOSEMU 模式器,DOSEMU 也可以访问 Linux 分区。
当在 DOS 提示符下运行 makebt.exe 时,它会询问需要进行更改的 ISO 文件的完整路径和文件名,此时要输入想实现多重启动的 ISO 文件的名字,比如 CD.ISO,这样就会看到下面的信息:
-------------------------------------
Make Multiple Boot CD-ISO Image Modifier ver 1.02
ISO File path and name: cd.iso
Bootable Disk Image Boot media type Default LBA
-------------------------------------
BC ) BOOT.CAT
1 ) FBSD.IMG 1.44MB Floppy Y
2 ) LINUX.IMG 2.88MB Floppy -
3 ) PLAN9.IMG 1.44MB Floppy -
4 ) QNX.IMG 1.44MB Floppy -
5 ) OPENBSD.IMG 2.88MB Floppy -
...
10 )
= move between fields, up/down arrows = move between rows, F1 = Confirm
Press 'y' key to make this image as default boot
按照提示仔细输入各映像文件的名称,注意一定要使用 8.3 的格式。在每一行后面,可以选择使用 1.44MB 软盘模拟、2.88MB 软盘模拟、硬盘模拟或者不进行模拟。此处只使用了 1.44MB 和 2.88MB 模拟 (如果想要进行硬盘模拟,那么要有一个 650MB 的 Linux 分区,并且拷贝该可启动分区的文件系统),使用向右方向键在不同的模拟类型之间选择。在屏幕的右端设置默认的启动映像,然后在相应的映像文件后按“Y”即可。
做完上述工作后,按下“F1”。这个工具非常智能,如果输入的映像文件不正确,那么按下“F1”后就会得到一个警告信息。根据提示进行修改,然后再次按下“F1”键。
开始刻录
下面我们就可以使用命令开始刻录了:
# cdrecord -v speed=8 dev=0,0,0 /cd.iso
当从光盘启动时,就会发现并没有有关操作系统的描述,而是只有数字。第一个和第二个数字 (0,1) 代表的是同一个操作系统。对于这个问题,我没有进行更多的测试,最简单的方法是你可以记下每一个数字所代表的操作系统,以备使用。当然也可以继续探索,看看有没有其它的解决办法。
使用刚才制作的光盘启动以后,可以通过加载来访问它 (比如 mount/dev/hdc/mnt)。这时也可以访问包含有其它工具的 /Soft 目录。
摘自 : 开放系统世界?赛迪网 |
|