我想将Ubuntu 9.10 LiveCD添加到这个救援USB驱动器.我有一个工作的jumpdrive,所以我可以很容易地复制文件.我可以搜索GRUB所需的menu.lst条目,但是Ubuntu LiveUSB使用了相当复杂的syslinux配置.此外,我想保留当前的LiveCD / LiveUSB外观,而无需将syslinux配置移植到GRUB.
在~quack的建议下,我尝试了一个menu.lst条目:
title Ubuntu 9.10 LiveCD root=(hd0,0) kernel /ubuntu-9.10/syslinux/isolinux.bin
但是GRUB回复了错误13:无效或不支持的可执行格式.在GRUB命令行中,我尝试了:
grub> root=(hd0,0) grub> kernel /syslinux/isolinux.bin
因为我在该位置有第二个isolinux.bin文件,但GRUB响应时出现了同样的错误.我也尝试过:
grub> chainloader /syslinux/isolinux.bin
并再次收到错误13.最后,我尝试了GRUB命令行:
grub> root=(hd0,0) grub> kernel /ubuntu-9.10/install/mt86plus grub> boot
那很有效
我真正想要的是让GRUB调用syslinux / isolinux bootloader的方法.然后syslinux可以加载自己的菜单和诸如此类的东西.
有人知道怎么做吗?
解决方法
Chainloading syslinux from GRUB seems not to be
possible 07001. I don’t know about GRUB2.
This could be useful for multi-booting (syslinux-based) partitions.Chainloading syslinux from GRUB4dos (on different partitions) is
possible. I managed it through the mapping,explained (again) 07002.
It solves some 07003.
补丁页面提到了一个类似的补丁发布到grub-devel为Grub v2; this post可能是那个补丁.或this message,指this bug report(日期为2009年11月,所以它是最近的)Grub v2 patch.
要使用其中一个补丁,您需要为您首选的Grub版本下载Grub源代码,检查它是否已包含补丁,尝试应用补丁,然后重新编译并重新安装新的Grub.
原始答案:
我首先尝试测试一个简单的Grub条目.这是Debian系统上Memtest86实用程序的标准Grub条目:
title Debian,memtest86+ root (hd0,0) kernel /boot/memtest86+.bin
只需尝试使用您的值进行调整(根据需要更改根分区或内核路径):
title Ubuntu LiveUSB SysLinux boot root (hd0,0) kernel /syslinux/isolinux.bin
我认为你不需要这个任务的chainloader命令.