Usb

在 USB 快閃記憶體驅動器上安裝 Grub 2

  • March 29, 2020

MultiBootISOs是一個工具,可讓您在 USB 快閃記憶體驅動器上安裝 Grub。我真的很喜歡它,因為它可以讓我從 ISO 文件啟動,並讓我在我的 USB 上放一堆 ISO 並選擇啟動哪個。

問題是,這是一個 Windows 工具,我不知道如何通過命令行來完成。我也想知道如何安裝Grub(2) 這種方式,Grub Legacy 似乎更容易…

編輯:我不是要工具(絕對不是 Windows 工具)。我想知道我必須執行的命令才能產生相同的效果。我現在腦子裡有 Ubuntu,但如果有一種通用的方法可以在 USB 中啟動任何 ISO,那就更好了。

你讓我很好奇這是怎麼做到的。Pendrivelinux 網站有一個教程,我是從我的 Mint 9 安裝中完成的,而不是網站建議的 live cd。

我首先在終端中查找我的 USB 驅動器的位置,我執行df它返回設備的位置為

/dev/sdg1   /media/LINUXUSB

之後我跑了

sudo su

然後安裝 grub 2

grub-install --no-floppy --force --root-directory=/media/LINUXUSB /dev/sdg1

我必須另外使用 –force ,站點上的範例沒有。然後我做了

cd /media/LINUXUSB/boot/grub

該站點提供了一個連結,可以將 grub.cfg 的副本下載到我 USB 驅動器上的 /boot/grub 目錄。連結是

wget http://pendrivelinux.com/downloads/grub.cfg

之後我編輯了 grub.cfg 以反映我 USB 驅動器上的 iso。

set timeout=10 set default=0

menuentry "Run Fedora" {
   loopback loop /Fedora13.iso
   linux (loop)/isolinux/vmlinuz0 boot=isolinux iso-scan/filename=/Fedora13.iso splash --
   initrd (loop)/isolinux/initrd0.img
}

menuentry "Run Ubuntu" {
   loopback loop /ubuntu-10.04-netbook-i386.iso 
   linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu-10.04-netbook-i386.iso splash --
   initrd (loop)/casper/initrd.lz
}

menuentry "Run Clonezilla" {
   loopback loop /clonezilla.iso
   linux (loop)/live/vmlinuz boot=live iso-scan/filename=/clonezilla.iso splash --
   initrd (loop)/live/initrd.img }

我發現在不同的iso中,vmlinuz和initrd位於不同的目錄中。我能夠讓所有三個開始啟動過程;但是,只有 Ubuntu 才能實際載入。如果我弄清楚我需要什麼才能讓其他兩個完成載入,我稍後會添加。我還沒有嘗試過任何其他iso只有這三個。

引用自:https://unix.stackexchange.com/questions/665