it-swarm.com.de

Wie füge ich einen GRUB2-Menüeintrag zum Booten von Ubuntu auf einem USB-Laufwerk hinzu?

Ich frage nicht, wie man die LiveCD von einem USB bootet.

Ich habe 2 Ubuntu-Installationen, eine auf der internen Festplatte meines Computers und eine auf einem USB-Laufwerk.

Gibt es eine Möglichkeit, einen GRUB2-Menüeintrag (zum GRUB auf meiner internen Festplatte) hinzuzufügen, um das Ubuntu-Betriebssystem zu starten, das ich auf dem USB-Flash-Laufwerk installiert habe nd haben dies funktioniert der gleiche Menüeintrag auch nach dem Upgrade des Linux-Kernels über die USB-Installation noch?

23
kiri

Ich habe herausgefunden, wie die UUID des Laufwerks verwendet wird. Dies ist nützlich, wenn beim Start mehrere Laufwerke angeschlossen sind. Dank an oldfred für seinen Hinweis zu /vmlinux und /initrd.img Symlinks.

Fügen Sie dies der Datei /etc/grub.d/40_custom hinzu und ersetzen Sie UUID=XXXX-YYYY durch die Partitions-UUID (erhalten Sie die UUID mit dem Befehl blkid)

menuentry "Boot from USB Drive" {
    set root=UUID=XXXX-YYYY
    linux /vmlinuz root=UUID=XXXX-YYYY ro quiet splash
    initrd /initrd.img
}
9
kiri

Jedes Mal, wenn Sie den Kernel auf extern aktualisieren, können Sie dies ausführen, um die Startzeilengruppe in grub auf dem internen Laufwerk zu aktualisieren.

Sudo update-grub

Sie können aber auch eine Boot-Zeilengruppe zu grub2s 40_custom hinzufügen, die die Partition und nicht den spezifischen Kernel bootet. Ubuntu installiert Links in/(root), um die letzte Installation zu starten. Passen Sie das folgende Beispiel gegebenenfalls an Ihr Laufwerk und Ihre Partition an. Boot-Laufwerk mit Grub ist immer hd0, aber dann werden andere Laufwerke in der vom BIOS angegebenen Reihenfolge gemeldet, die variieren kann.

Bearbeiten mit:

gksudo gedit /etc/grub.d/40_custom

dann füge hinzu:

menuentry "Install on sdb1" {
    set root=(hd1,1)
    linux /vmlinuz root=/dev/sdb1 ro quiet splash
    initrd /initrd.img
}

Während das oben beschriebene Verfahren funktioniert, kann sich das Laufwerk möglicherweise ändern, wenn ein Flash-Laufwerk oder ein anderes USB-Gerät angeschlossen wird. Also konvertiere ich zur Verwendung von Labels.

menuentry "Cosmic 18.10 on sdb12 test" {
    search --set=root --label cosmic_b --hint hd2,gpt12
    configfile /boot/grub/grub.cfg 
}
33
oldfred

Das Booten vom Ubuntu Live USB-Menüeintrag in /etc/grub.d/40_custom sollte so aussehen (Ersetzen Sie DRIVE_UUID durch die UUID Ihrer Partition):

menuentry "Boot from LIVE USB Drive" {
   search --set=root --fs-uuid DRIVE_UUID
   linux ($root)/casper/vmlinuz boot=casper quiet splash --
   initrd ($root)/casper/initrd.lz
}

So wenden Sie Änderungen an:

Sudo update-grub
1
wiktor.2200