Rosendoktor
Well-Known Member
Hallo zusammen,
bei meinen Versuchen, FreeBSD über GRUB2 im UEFI Modus zu booten, hab' ich einen Teilerfolg errungen, leider mit Hilfe eines Workarounds mit dem ich zwar leben kann, der aber unschön ist.
Wie im anderen Thread beschrieben, will ich eigentlich den Kernel direkt von Grub starten, unter Umgehung des üblichen Loaders bzw. Bootmenüs. Das funktioniert im Legacy Modus einwandfrei, aber nicht oder nicht sauber im UEFI Modus, je nach Maschine...
Also wollte ich es anders versuchen, und das klappt so leidlich.
Der GRUB2 kann auch andere UEFI Loader starten, der Code dazu ist recht einfach:
Der Loader BOOTX64.EFI (=loader.efi aus /boot) muss natürlich auf die EFI Partition.
Nun heisst es in den Manual Pages zu GELI:
Ich verstehe das so (und hab' es auch so im Netz gefunden) dass der Bootloader, wenn er eine mit dem -g Flag versehene Partition findet nach dem Passwort fragt, diese entsperrt und den Bootprozess fortsetzt. Also habe ich bei der verschlüsselten Bootpartition das -g und auch das -b Flag gesetzt.
Der UEFI Loader fragt aber nicht nach dem Passwort. Man sieht schön wie er alle Partitionen durchgeht und sich am Ende beschwert, dass er keine bootbare Partition findet (den genauen Wortlaut weiß ich nicht mehr).
Warum nicht? Kann das nur der Legacy Bootloader, oder ist das noch gar nicht implementiert, oder mache ich was falsch?
Der Workaround, welcher FreeBSD im UEFI Mode letztendlich bootfähig macht, war schlicht, eine unverschlüsselte Kopie der Bootpartition am Ende der SSD anzulegen. Die wird gefunden, und dann bootet der Kernel auch und es geht weiter...
Wäre schön wenn auch das Entsperren der verschlüsselten Bootpartition durch den UEFI Bootloader funktionieren würde. Weiß da jemand genaueres?
Grüße,
Robert
bei meinen Versuchen, FreeBSD über GRUB2 im UEFI Modus zu booten, hab' ich einen Teilerfolg errungen, leider mit Hilfe eines Workarounds mit dem ich zwar leben kann, der aber unschön ist.
Wie im anderen Thread beschrieben, will ich eigentlich den Kernel direkt von Grub starten, unter Umgehung des üblichen Loaders bzw. Bootmenüs. Das funktioniert im Legacy Modus einwandfrei, aber nicht oder nicht sauber im UEFI Modus, je nach Maschine...
Also wollte ich es anders versuchen, und das klappt so leidlich.
Der GRUB2 kann auch andere UEFI Loader starten, der Code dazu ist recht einfach:
Code:
menuentry "FreeBSD 12.1-RELEASE" --unrestricted {
insmod zfs
insmod bsd
set root='(hd0,gpt2)'
search --no-floppy --file --set=root /EFI/FREEBSD/BOOTX64.EFI
chainloader /EFI/FREEBSD/BOOTX64.EFI
}
Nun heisst es in den Manual Pages zu GELI:
Code:
-g Enable booting from this encrypted
root filesystem. The boot loader
prompts for the passphrase and loads
loader(8) from the encrypted
partition.
Der UEFI Loader fragt aber nicht nach dem Passwort. Man sieht schön wie er alle Partitionen durchgeht und sich am Ende beschwert, dass er keine bootbare Partition findet (den genauen Wortlaut weiß ich nicht mehr).
Warum nicht? Kann das nur der Legacy Bootloader, oder ist das noch gar nicht implementiert, oder mache ich was falsch?
Der Workaround, welcher FreeBSD im UEFI Mode letztendlich bootfähig macht, war schlicht, eine unverschlüsselte Kopie der Bootpartition am Ende der SSD anzulegen. Die wird gefunden, und dann bootet der Kernel auch und es geht weiter...
Wäre schön wenn auch das Entsperren der verschlüsselten Bootpartition durch den UEFI Bootloader funktionieren würde. Weiß da jemand genaueres?
Grüße,
Robert