如何使用 Grub2/Burg 引导加载程序从 iso 引导

如何使用 Grub2/Burg 引导加载程序从 iso 引导

我使用 Ubuntu 作为我的主要操作系统,替代方案是用于游戏的 Windows 7 和其他东西。我想要有菜单来启动一些 Live CD ISO。有没有办法像 CD 一样在 Grub2/Burg 中创建菜单项来启动 ISO 文件?

我看到有一些方法可以使其成为可能,但几乎方法需要指定的启动参数(内核参数)。但我有多种 Live OS 可以使用引导加载程序来启动,包括:Linux、Unix、DOS(用于恢复目的)...

我正在寻找更通用的方法来轻松发现并添加到菜单配置文件。

答案1

我已经有了一个带有 SysLinux、Grub4Dos 和 Grub2 的完美链式加载器,这是我的配置:

系统Linux

LABEL DSL
KERNEL memdisk
INITRD /iso/dsl.iso
APPEND iso raw

LABEL GRUB4DOS
KERNEL /boot/grub.exe

Grub4Dos

title Paragon Partition Manager
map (hd0,0)/iso/paragon-bootable-media.iso (hd32)
map --hook
chainloader (hd32)
boot

title Syslinux
chainloader /boot/syslinux/syslinux.bin

title GRUB2 Chainload
root (hd0,0)
kernel /boot/grub/core.img
boot

GRUB2

menuentry "Ubuntu 13.10 Desktop ISO" {
  loopback loop /iso/ubuntu-desktop-amd64-13.10.iso
  linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/iso/ubuntu-desktop-amd64-13.10.iso noeject noprompt splash --
  initrd (loop)/casper/initrd.lz
}

menuentry "Tinycore ISO" {
  loopback loop /iso/tinycore.iso
  linux (loop)/boot/bzImage --
  initrd (loop)/boot/tinycore.gz
}

menuentry "GRUB4DOS" {
  linux16 /boot/grub.exe
}

menuentry "SYSLINUX" {
  chainloader=/boot/syslinux/syslinux.bin
}

答案2

对于普通的linux发行版,您需要指定ISO映像的绝对路径和磁盘,以及加载内核的参数,请参见下面的示例:

loopback loop (hd0,msdos0)/linux.iso
linux (loop)/vmlinuz parameters
initrd (loop)/initrd.img

对于其他操作系统,我从未成功。

答案3

对于像 ubuntu/mint 这样的 debian 风格,请尝试apt-get install grub-imageboot.然后只需将 iso 文件放入某个文件夹(默认为 /boot/images/),每次运行时sudo update-grub都会为该文件夹中的每个可启动 iso 文件添加启动菜单条目。 (类似于 easybcd 在 mbr-windows 电脑上引导 isos 的方式)。

    sudo apt-get install grub-imageboot  
    # do df -h /boot and make sure you have 300meg free on /boot partition
    cd /tmp; wget http://ftp.sh.cvut.cz/slax/Slax-9.x/slax-32bit-9.11.0.iso 
    sudo cp  /tmp/slax-32bit-9.11.0.iso  /boot/images/
    sudo grub-update

例如,如果您的引导分区很小,您可以boot-isos在大分区上创建一个名为 /home/ 的文件夹,然后编辑 /etc/default/grub-imageboot 文件,如下所示。

$ sudo mkdir /home/boot-isos/
$ cat /etc/default/grub-imageboot 
# Where to find the iso/floppy images

#IMAGES="/boot/images"
IMAGES="/home/boot-isos"

# You can override the boot options for iso/floppy images here
# see http://syslinux.zytor.com/wiki/index.php/MEMDISK for details

#IMAGEOPTS="rawimg"
#ISOOPTS="iso"

相关内容