Ich habe bei meinem Rechner während der Installation noch Legacy im BIOS gehabt und wollte auf EFI wechseln damit ich den GRUB2 im EFI Mode auch für die Windows Installation verwenden kann. Anscheinend hat der EFI GRUB nicht mehr die ntldr Module dabei.
In meinem Fall war es relativ unspektakulär, CMD im Admin Modus öffnen.
Mit folgendem Befehl lässt sich der EFI Bootloader von Windows installieren, wichtig ist hier das die Partition bereits eine GPT Partitionierung aufweist, ist dies nicht der Fall bitte bei Google eine entsprechende Anleitung suchen.
mbr2gpt /allowFullOS /validate
Wird kein Fehler angezeigt kann mit der Konvertierung begonnen werden.
mbr2gpt /allowFullOS /convert
Anschließend neu booten und das BIOS auf EFI umstellen.
Integration in GRUB2
In meinem Fall habe ich die Disk mit Ubuntu als primären Bootloader im BIOS angegeben, über den GRUB2 starte ich dann den Windows EFI Bootloader. Unter Ubuntu sind keine manuellen Anpassungen an der /boot/grub/grub.cfg notwendig. Um zu prüfen ob Ubuntu den Windows EFI Loader erkennt kann man das os-prober Tool verwenden.
root@demt:~# os-prober /dev/sda2@/efi/Microsoft/Boot/bootmgfw.efi:Windows Boot Manager:Windows:efi
Anschließend mit update-grub automatisch die erkannten Bootloader mit aufnehmen.
root@demt:~# update-grub Quelldatei `/etc/default/grub' Quelldatei `/etc/default/grub.d/init-select.cfg' GRUB-Konfigurationsdatei wird erstellt … Linux-Abbild gefunden: /boot/vmlinuz-5.11.0-34-generic initrd-Abbild gefunden: /boot/initrd.img-5.11.0-34-generic Windows Boot Manager auf /dev/sda2@/efi/Microsoft/Boot/bootmgfw.efi gefunden Startmenüeintrag für UEFI-Firmware-Einstellungen wird hinzugefügt erledigt
Will man per Default Windows starten muss man die /etc/default/grub anpassen.
Den Namen des Menü Eintrages kann man in /boot/grub/grub.cfg rausfinden.
GRUB_DEFAULT="Windows Boot Manager (auf /dev/sda2)"
Nach der Anpassung muss nochmal ein update-grub durchgeführt werden.