通过GRUB2引导ISO文件

我正在将我的多重启动USB驱动器从syslinux + grub迁移到grub2。 我现在正在寻找启动ISO文件的方法。 我正在寻找一种链式方法。 所以我不想添加内核和initrd参数。

这就是grubs menu.lst中的样子:

title MiniTool Partition Wizard 9 find --set-root /multiboot/ISOS/pwfree9.iso map /multiboot/ISOS/pwfree9.iso (hd32) map --hook root (hd32) chainloader (hd32) 

这在grub.cfg中会是什么样子?

要创建Grub2 menuentry ,必须将其添加到/etc/grub.d/40_custom文件中。

在文件中的现有行下方添加菜单项。

使用文本编辑器以root身份打开/etc/grub.d/40_custom文件。

 sudo nano /etc/grub.d/40_custom 

添加菜单栏。

保存文件。

更新Grub 2菜单。

 sudo update-grub 

SystemRescuecd示例:

 menuentry '[loopback]systemrescuecd-x86-4.5.2' { set isofile='/boot/iso/systemrescuecd-x86-4.5.2.iso' loopback loop $isofile linux (loop)/isolinux/rescue64 isoloop=$isofile initrd (loop)/isolinux/initram.igz } 

Ubuntu示例:

 menuentry '[loopback]ubuntu-14.04.1-desktop-amd64' { set isofile='/boot/iso/ubuntu-14.04.1-desktop-amd64.iso' loopback loop $isofile linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile locale=en_US.UTF-8 initrd (loop)/casper/initrd.lz } 

资源

您可以使用grub4dos和partnew命令,但我不认为grub2能够做同样的事情。 partnew命令将分区条目写入USB驱动器(例如ptn#4),然后您可以直接启动99%的所有Linux ISO而无需特殊菜单 – 相同的菜单几乎适用于所有Linux ISO。 http://www.rmprepusb.com/tutorials/tails http://www.easy2boot.com/faq-/how-e2b-works/