Grub2 支持 Memtest86+ iso 文件吗?如果支持:我该如何在 grub.cfg 中写入 grub 条目以启动 Memtest86+ iso 文件?
答案1
有多种方法可以将 ISO 添加到 grub2 配置中。不过,使用其他选项更简单。
- 下载memtest86+-4.20.bin(最新数据截至 2011 年 11 月)
- 将其放在你的 /boot 分区中。(就像你的 Linux 内核一样)
- 将以下内容添加到 /etc/grub.d/40_custom (它应该在三行上,例如这)
menuentry "Memtest 86+" { linux16 /memtest86+.bin }
最后。更新 grub 并重启
sudo grubupdate && sudo reboot
答案2
参加这个聚会已经晚了六年了,但是我也没有在任何地方找到答案,所以我做了以下事情来解决这个问题。
- 安装 memtest ISO
- 看着挂载点/isolinux/isolinux.cfg
- 将 isolinux 配置转换为 GRUB2 配置
请注意,该方法适用于其他 ISO,而不仅仅是 Memtest86+。
执行上述操作会产生多个 isolinux 配置,具体取决于您想要如何启动 Memtest86+,因此您最终会得到多个菜单项:
submenu "> MemTest86+ 7.2" {
menuentry "MemTest86" {
set isofile="/Memtest86-7.2.iso"
echo "Mounting Memtest86-7.2.iso"
loopback loop $isofile
echo "Loading kernel"
linux16 (loop)/isolinux/memtest iso-scan/filename=$isofile
echo "Starting MemTest86+ 7.2"
}
menuentry "MemTest86 (one pass)" {
set isofile="/Memtest86-7.2.iso"
echo "Mounting Memtest86-7.2.iso"
loopback loop $isofile
echo "Loading kernel"
linux16 (loop)/isolinux/memtest iso-scan/filename=$isofile onepass
echo "Starting MemTest86+ 7.2"
}
menuentry "MemTest86 (btrace)" {
set isofile="/Memtest86-7.2.iso"
echo "Mounting Memtest86-7.2.iso"
loopback loop $isofile
echo "Loading kernel"
linux16 (loop)/isolinux/memtest iso-scan/filename=$isofile btrace
echo "Starting MemTest86+ 7.2"
}
menuentry "MemTest86 (single CPU)" {
set isofile="/Memtest86-7.2.iso"
echo "Mounting Memtest86-7.2.iso"
loopback loop $isofile
echo "Loading kernel"
linux16 (loop)/isolinux/memtest iso-scan/filename=$isofile maxcpus=1
echo "Starting MemTest86+ 7.2"
}
menuentry "MemTest86 (serial output)" {
set isofile="/Memtest86-7.2.iso"
echo "Mounting Memtest86-7.2.iso"
loopback loop $isofile
echo "Loading kernel"
linux16 (loop)/isolinux/memtest iso-scan/filename=$isofile console=ttyS0,9600
echo "Starting MemTest86+ 7.2"
}
}