hobride schrieb
ich habe da irgendwie ein Verständnisproblem mit den (U)EFI Booteinträgen und hoffe hier auf etwas Erleuchtung.
Wird schwierig, so ganz ohne Informationen. Aufgrund deiner Prosa kann man höchstens allgemein erklären, wie das mit UEFI ungefähr funktioniert oder zumindest angedacht ist. Siehe dazu bitte den zweiten Teil.
Ich benutze seit etwa einem Jahr einen PC mit fest installierter SSD mit ArchLinux. Mit UEFI Installation. Und zusätzlich nutze ich eine externe SSD mit MX Linux auch mit UEFI. Das funktionierte soweit ganz gut. Zum Wechsel hab ich dann das Bootmenu aufgerufen und die Platte gewählt von der ich starten wollte.
Tönt nicht nach Dualboot, wenn du manuell im Bootmenu etwas ändern musst.
Jetzt nach irgendeiner Spielerei mit einer dritten SSD klappt das nun nicht mehr.
Nach irgendeiner Spielerei? Egal nach welcher?
Im Bootmenu wird noch die interne SSD mit Arch angezeigt. Wenn ich mit einem Live Linux per chroot Methode ein grub-install durchführe wird danach das MX Linux auch wieder im Bootmenu angeboten. Bis ich die externe SSD abziehe und von der internen SSD ArchLinux starte. Dann ist der MX verschwunden und erscheint auch nicht mehr.
Sieht so aus, als ob die Firmware etwas Booteintragshygiene betreibt, was auch sinnvoll ist. Bei richtiger UEFI-Installation ist ein "grub-install" wie wenn du mit Kanonen auf Spatzen schiesst: Macht Spass, ist aber nicht immer nötig. Normalerweise reicht es, den Booteintrag neu zu erstellen.
Die MX SSD wird an anderen PC's übrigens problemlos erkannt uns kann gestartet werden.
Achso, ja dann...
Ich vermute dass ich die EFI Partition falsch benutze , aber wieso?
Vielleicht, vielleicht auch nicht. Vielleicht benutzt du die ESP falsch aus Unwissenheit, vielleicht hast du aber gar nicht beide Systeme im UEFI-Modus installiert. Reine Spekulation.
Um dir auch praktisch helfen zu können, musst du mindestens die beiden Ausgaben liefern:
sudo parted --list
sudo efibootmgr -v
Einer der vielen Vorteile von UEFI ist, dass man mehrere Bootloader parallel installiert haben kann. Früher, bei BIOS, hat die Firmware im MBR der angegebenen Festplatte nach einem Bootloader gesucht und ihn dann im Erfolgsfall auch geladen. Bei UEFI sucht die Firmware auf der ESP (EFI-System-Partition) nach dem Bootloader, der in der Bootreihenfolge (NVRAM) an erster Stelle angegeben ist und lädt ihn im Erfolgsfall.
Üblicherweise wird bei der Bootloaderinstallation der Bootloader in einem eigenen Verzeichnis auf der ESP installiert und im NVRAM wird ein Eintrag für ebendiesen Bootloader angelegt, der dann auch gleich an erste Stelle gesetzt wird. Als praktisches Beispiel sucht die Firmware beim Rechnerstart auf der ESP zum Beispiel nach dem Bootloader unter \EFI\arch\grubx64.efi und lädt ihn.
Da der Platz im NVRAM endlich begrenzt ist, macht es durchaus Sinn, Einträge zu entfernen. Zum Beispiel dann, wenn der Eintrag auf eine nicht mehr existierende ESP verweist oder der Bootloader gelöscht wurde. Vor vielen Jahren gab es durchaus Probleme, weil keine neuen Booteinträge mehr erzeugt werden konnten, da ungebrauchte Einträge nicht entfernt wurden.
Idealerweise hat man also pro Rechner eine ESP (auf einer internen Festplatte/SSD) mit beliebig vielen Bootloadern, die beliebig viele Betriebssysteme auf beliebig vielen inneren und äusseren Festplatten starten können. Es kommt dann vor, dass bei Bootloaderupdates die Bootreihenfolge umgestellt wird. Aber das kann man in aller Regel in der Firmware wieder umstellen. Je nach Firmware kann man auch die Bootreihenfolge fixieren, so dass das nicht passiert.
In der Praxis ist es allerdings nicht immer so leicht und locker, da UEFI nur eine Schnittstellenspezifikation ist. Das heisst, jeder Firmwarehersteller implementiert die Schnittstelle nach eigenem Gutdünken und meist so, dass es mit Windows (10) gut funktioniert. Ausserdem muss die Firmware mit mehreren ESPs zurecht kommen, sonst könntest du das Installationsmedium gar nicht starten (jedenfalls nicht so einfach).