11 30 2008
isolinux菜单转grub菜单一
grub和isolinux都是著名的Linux引导器(包括grub4dos,syslinux,pxelinux),各有特色,用来制作多重启动光盘/闪盘的最佳选择。一般大发行版都用isolinux来作光盘引导,因为它能做出漂亮的菜单,看上去很专业,但是制作漂亮的菜单也不那么容易,我也不太懂,所以我更喜欢用grub,小巧强大,其实是我用grub4dos,我已经在这个博客替grub4dos做了很多次广告了,下面说grub没特别说明也就指grub4dos,它的菜单比较容易理解和修改测试。
如果想制作自己的多重启动linux,用grub无疑是最方便的,但由于Linux发行商一般都不提供grub的菜单文件,所以我们只好自己改写菜单文件。也就是把“isolinux.cfg”改写为“menu.lst”了。我也试过直接用grub4dos来加载“isolinux.bin”文件来引导isolinux,不过不试100%成功的,grub4dos的开发社区在这个帖子也讨论过。所以最好还是改写菜单由grub4dos来引导。这里用发行版Slax来做例子。
本来我打算是写怎么手动改写文件的。先Google几下看看有什么资料好参考,发现我火星鸟,已经有人些已经写出自动处理的脚本了,名字就叫做IsoL2Grub,这里还有详细说明,还处于开发阶段,没有正式的下载链接。这东东实在低调,google一下所有网页,只有6条结果。我下载试用了一下,不错,这里先介绍用脚本搞定,下一篇再写手动的。
方法如下
- 先到这个网页下载,点击“Download GNU tarball”,下载一个“trunk.tar.gz”的压缩包。
- 打开终端运行
tar -xzvf trunk.tar.gz
cd trunk - 解压后有3个文件“isol2grub”是主程序,“isol2grub.hlp”是帮助文件, “Makefile”是安装脚本,安不安装随便,反正只需直接运行“isol2grub”。
- 加上可执行权限
chmod u+x isol2gru - Slax的光盘挂载在“/mnt”,isolinux菜单文件因该是光盘下的“/mnt/boot/slax.cfg”(isolinux.cfg只有一行,即调用这个文件),运行
./isol2grub /mnt/boot/slax.cfg - 觉得可以的话就重定向到文件
./isol2grub /mnt/boot/slax.cfg > menu.lst最后用虚拟机测试一下,很简单吧。
即可把内容输出到屏幕,跟我自己手动改的对比下,几乎一样。
如果脚本转换有问题,想手动修改的,继续看《isolinux菜单转grub菜单二》
