Ich habe die folgende Partitionstabelle auf dem Flash-Laufwerk eingerichtet:
Disklabel type: gpt
Device Start End Sectors Size Type
/dev/sdb1 2048 34815 32768 16M EFI System
/dev/sdb2 34816 854015 819200 400M Microsoft basic data
/dev/sdb3 854016 21825535 20971520 10G Linux filesystem
/dev/sdb4 21825536 30214143 8388608 4G Linux filesystem
Dann montiere ich sdb2
als boot
und sdb1
als boot/efi
und mache:
grub-install --target=x86_64-efi --efi-directory=boot/efi --recheck /dev/sdb
grub-mkconfig -o boot/grub/grub.cfg
Alles lief gut nach Ausgabe von Befehlen.
Aber wenn ich das USB-Flash-Laufwerk im BIOS-Startmenü neu starte und auswähle, heißt es, dass es nicht gestartet werden kann: Mit einem BIOS-Meldungsfeld komme ich nicht einmal zur Konsole oder so.
Fast das gleiche Setup auf meinem SSD-Laufwerk bootet perfekt mit EFI - es gibt /sys/firmware/efi
Ordner nach dem Booten.
Was vermisse ich oder mache ich falsch?
Boot failure.
mit einem TitelWarning
und einer SchaltflächeContinue
.Antworten:
Externe Festplatten werden im Allgemeinen über den Dateinamen des Fallback-Bootloaders gebootet
EFI/BOOT/bootx64.efi
(für x86-64-Systeme mit 64-Bit-EFIs). Ihre Installationsprozedur legte den Bootloader aufboot/efi
und verwendete wahrscheinlich einen Namen vongrub.efi
odergrubx64.efi
, obwohl ich nicht 100% positiv bin. (Sie sollten überprüfen, um was es sich handelt.) Wenn Sie die Dateien entsprechend umbenennen, sollte das Problem behoben sein, GRUB zum Starten zu bringen. Möglicherweise müssen Sie jedoch die GRUB-Binärdatei neu erstellen, um sie angrub.cfg
der richtigen Stelle suchen zu können .Ein Vorbehalt: Ich bin nicht mit allen Details des
grub-install
Befehls bestens vertraut , daher fehlen mir möglicherweise zusätzliche Probleme.quelle