|
|
当前网上基于LINUX的启动光盘大多是采用ISOLINUX作启动的,如本论坛讨论的比较多的GeexBox等。而基于WINDOWS的启动光盘大多采用EZBOOT。我们常常希望将基于LINUX的启动光盘和基于WINDOWS的启动光盘集成在一张光盘上。比如GeexBox英文版的只有几M,中文版的也只有二十几M单独刻一张盘显然太浪费,那么我们将GeexBox和深山红叶再加上一个精简的XP和其它自己喜欢的工具集成在一张光盘上就是一个不错的想法。
GeexBox下载地址:http://www.nhltc.edu.tw/~wanhua/
当然,本论坛已有将上面说的软件集成在一起的方法了,大约是用EZBOOT或GRUB做启动,用loadlin.exe或GRUB引导LINUX。也有说用EZBOOT引导ISOLINUX启动成功的,不过我没成功过。
事实上,GRUB的引导功能非常强,基本上ISOLINUX和EZBOOT能做的事GRUB都能做,所以要完成上面说的工作其实只要GRUB就能完成,有关这方面的贴子已经很多了,我就不多说了。
我现在说的是这样一种方法:用ISOLINUX启动光盘,在ISOLINUX里引导软盘镜像启动DOS或GRUB,采用这样的方式是因为我对WINDOWS、DOS很熟悉有问题能解决,而对LINUX只是初步会用但有问题解决起来很困难。(我想大多数人都一样吧)用ISOLINUX启动光盘,原LINUX的启动项不用修改,这样LINUX的启动绝无问题(除非你原来的LINUX光盘就有问题)。只要我们能从ISOLINUX启动软盘镜像那么我们就能启动DOS或GRUB,所有问题都变得简单了。
以geexbox-0.98-zh-cn.iso为例,geexbox-0.98-zh-cn.iso可在官方网站下载。用UltraISO将其boot\isolinux\isolinux.cfg提取出来,用Uedit32打开(用记事本打开显示不能换行),提示是否转换为DOS格式,选否(选转换可能也行,我没试),isolinux.cfg内容如下
default geexbox
timeout 50
prompt 1
#display txtmsg
label geexbox
kernel /GEEXBOX/boot/vmlinuz
append initrd=/GEEXBOX/boot/initrd.bz2 root=/dev/ram0 rw init=linuxrc boot=cdrom vga=785 video=vesa:ywrap,mtrr console=/dev/tty1
label install
kernel /GEEXBOX/boot/vmlinuz
append initrd=/GEEXBOX/boot/initrd.bz2 root=/dev/ram0 rw init=linuxrc boot=cdrom installator
label debug
kernel /GEEXBOX/boot/vmlinuz
append initrd=/GEEXBOX/boot/initrd.bz2 root=/dev/ram0 rw init=linuxrc boot=cdrom debugging
implicit0
gfxbootbootlogo
readinfo2
framebuffer0
可以看出以label 开头的就是一个启动菜单。
我们添加如下启动项;(可根据自己的习惯修改文件名和目录,我这里只是作个演示)
label MYBOOT
kernel /boot/myboot/memdisk
append initrd= /boot/myboot/myboot.img
保存,用UltraISO将修改后的isolinux.cfg替换原来的isolinux.cfg在光盘建/boot/myboot目录,/boot/myboot目录下放两个文件:myboot.img就是你要启动的软盘镜像或硬盘镜像,memdisk用我上传的这个(要用RAR解开)。文件名和路径要注意大小写,LINUX是区分大小写的。
[UploadFile=memdisk_1120477092.rar]
保存ISO(注意,文件格式设置为Windows/Unix(31)LINUX里许多文件名很长,另外要选中允许小写字母项)。
然后用这个镜像启动,启动组里就多一个MYBOOT选项,选择MYBOOT启动就启动了myboot.img。如果myboot.img是个DOS启动盘,我们就回到了熟悉的DOS下了,编个DOS启动菜单我们己经可以做如安装系统,维护等许多工作了(如无忧启动2.6),当然我们可以用GRUB for DOS启动GRUB,这些都能在置顶贴里找到,我就不多说了。
如果要把两个以上的基于LINUX的系统集成在一起则要注意各个系统的isolinux目录冲突的问题,解决方法是只保留一个isolinux目录,(保留的这个作启动)其余的重命名,将其isolinux.cfg启动组复制到保留的isolinux目录下的isolinux.cfg的启动组里,注意要修改其vmlinuz和initrd的路径为你重命名后的路径。
以下是我集成的光盘的启动画面。
[UploadFile=1_1120477324.jpg]
我增加的ISOLINUX启动是:GRUB,启动一个GRUB软盘镜像
[UploadFile=2_1120477540.jpg]
这个GRUB软盘镜像的启动画面,这个软盘镜像是hnlyzhd 版主做的我增加一个菜单指向光盘上的菜单文件。
hnlyzhd 版主做的镜像下载地址:http://sysoft.zdwx.com/download/bootdisk.rar
后面的就不用说了吧。GRUB配置置顶贴都有。
光盘做好了但是遗憾的是我不能调用EZBOOT!本来我的设想是,isolinux引导GRUB,然后在GRUB里run (cd)/EZBOOT/ISOGRUB.BIN启动EZBOOT这样习惯用EZBOOT的人就方便了,但是我没成功,run (cd)/EZBOOT/ISOGRUB.BIN是启动了EZBOOT菜单,但是这个菜单背景图像显示不了,而且除了重启、从硬盘启动等boot xx、reboot命令能正常调用外其于菜单(run xxx.xxx)都无法运行,提示
File not find
press any key to return ……
我发现只有用ISOGRUB做启动才能正常用run (cd)/EZBOOT/ISOGRUB.BIN调用EZBOOT菜单,用其它方式启动GRUB(如GRUB for DOS)就不能用run (cd)/EZBOOT/ISOGRUB.BIN调用EZBOOT菜单了,错误如上所说。不知谁能解决这个问题?
|
|