我已经尝试了几个小时了,但到目前为止我还做不到。
我有一个 USB 记忆棒,sda1 (vfat) 上有 grub4dos,sda3 (ext2) 上有 /boot syslinux,sda2 (btrfs) 上有 root。 ext2 和 syslinux 是启动分区。
菜单中有两个选项: 1. Boot Arch on btrfs。这个效果很好。 2. 在 sda1 上链接加载到 grub4dos (Easy2Boot)。
我的设置与 grub2 一起使用,但我现在转移到 syslinux,我无法使用第二个选项。这是原始的 grub2 工作条目:
menuentry "Live ISOs"{
set root='(hd0,1)'
linux /grub.exe
}
现在,我尝试将其转换为 syslinux,如下所示:
LABEL E2B
MENU LABEL Live ISOs
COM32 /chain.c32 hd0,1
APPEND ntldr=/grub.exe
但它给了我“错误:无法读取启动文件”
另外,像这样:
LABEL E2Bb
MENU LABEL Live ISOs
BOOT /grldr
APPEND root=/dev/sda1
但这甚至没有给我一个错误。只是屏幕闪烁并返回 syslinux 菜单。
...就像这样:
LABEL E2B
MENU LABEL Live ISOs
COM32 chain.c32
APPEND hd0 1 grldr=/grub.exe
其结果是:
ERR: Option 'maps' requires a sector.
我认为问题是向 syslinux 显示哪个分区来查找 E2B 启动文件,也可能选择正确的文件(grub.exe、grldr 或其他文件),但我没有想法。
答案1
chainload-syslinux可以帮助你 - 它有一些例子