Dual-Boot Probleme - 2. Bootloader wird dauernd überschrieben?

Soulwarrior

Ensign
Registriert
Apr. 2007
Beiträge
252
Hallo zusammen,

ich will aktuell wieder ein wenig mit Linux experimentieren und habe so meine Probleme mit dem Dual-Boot. Ich möchte gerne meinen Bootloader für Windows auf der System-SSD (C) lassen und Linux (EndeavourOS aktuell) samt dessen Bootloader auf eine externe HDD, die ich nach Bedarf auch nicht angeschlossen haben kann und dann einfach Windows durchstarte. Keine Ahnung ob da schon der Fehler liegt.

Eingerichtet bekommen hatte ich es jedenfalls (mehrfach nun), dass es so lief, doch nun ist es eben schon mehrmals passiert, dass beim Neustart nach anklemmen der HDD plötzlich als Bootauswahl eben nicht mehr der Linux Bootloader sondern nur noch der Windows Bootloader zur Verfügung steht (einmal angezeigt auf der SystemSSD, einmal auf der HDD). Was kann ich tun, um nicht jedes Mal den Bootloader per LIVE-USB-Stick neu schreiben zu müssen?


___________________________________________________________

Optional zum Thema:

Ich möchte noch ein Phänomen zusätzlich beschreiben, dass eventuell mit dem Vorhaben zu tun hatte, auch wenn es vll. nur der SuFu dient. Ich hatte vor einiger Zeit ein Dual-Boot mit Garuda-Linux auf ähnliche Weise hergestellt, das war aber noch vor der Aufrüstung des PCs und damit auch vor der Formatierung der SSD wo zu der Zeit auch der Bootloader für Windows UND Linux drauf war. Heißt, ich konnte also nicht mehr Linux starten, da der Bootloader weg war. Ich versuchte dieses Linux per chroot wiederherzustellen samt Neuinstallieren des Bootloaders auf der HDD (wofür ich noch eine FAT32 EFI Partition darauf anlegen musste). Letztendlich habe ich es zwar geschafft, dass er davon startete, landete jedoch immer nur im Notfall Terminal ohne Aussicht auf Lösung. Dann habe ich mich entschieden doch das Linux-System neuzuinstallieren und das dann mit EndeavourOS getan. Das startete dann 1-2 Mal erfolgreich, doch als ich dann später den Rechner aus- und wieder angeschaltet habe, begann das Problem: Beim Hochfahren 2 kurze Pieptöne, nach einer Pause nochmal 4 kurze Pieptöne, mal direkt, mal nach dem 2. Hochfahren mit den Pieptönen landete ich dann im BIOS, wo geschrieben stand "ROM Image is not loaded. ROM Image update denied". Meine Lüfterkurven waren seltsam verstellt, ich konnte neu eingestellte nicht mehr speichern (EFI_write_protected), auch das Überspielen per Q-Flash mit dem gleichen BIOS wollte nicht funktionieren (angeblich inkompatibel). Ich konnte zwar noch Einstellungen im BIOS treffen und auch darüber ins Windows durchstarten, landete aber bei jedem Neustart erneut mit den Piepstönen und den Fehlermeldungen im BIOS. Ich dachte schon, ich muss das Board einschicken (BIOS Defaults laden und CMOS Reset halfen auch nicht), dann versuchte ich es aber mit der Flashback-Funktion des Boards und Gott sei dank hat mich das gerettet. Wie das aber überhaupt passieren konnte und was das überhaupt war, verstehe ich nicht.
 
Zuletzt bearbeitet:
Wenn Du hier die Spielchen mit "eine HDD kann auch weg sein" und Dualboot machst, dann würde ich das Linux so installieren, dass alles was damit zusammenhängt auf dieser HDD/SSD/was-auch-immer landet (also auch der passende Bootloader) und beim Starten über die Auswahl des Bootmediums beim Board gehen und dann das entsprechende Laufwerk auswählen, ansonsten UEFI und es wird über den Windows Bootloader gestartet im Normalfall.

Ich hatte diesen Effekt im Dualboot mit Windows und OpenSuSE.
Wenn das Laufwerk von Linux nicht da war, dann stand der Grub nur dämlich rum und konnte nichts machen außer einer Fehlermeldung anzeigen, da ja alles was benötigt war auf einem Laufwerk wohnte, dass nicht anwesend war.

Im Fall "dauerhafter Dualboot" habe ich es dann mit dem OpenSuSE Bootloader gemacht, der dann Standard war und das Grubmenü anzeigte (gestartet vom Datenträger mit Linux drauf).
 
  • Gefällt mir
Reaktionen: cosmo45
Ich hoffe ich habe dich richtig verstanden, denn ich habe ja den Bootloader von Linux zusammen mit dem Linux auf der HDD. Im aufgerufenen Bootmenü erscheint ja auch einmal die SSD und einmal die HDD, also scheint er auch den Bootloader auf der HDD zu entdecken. Nur das hinter dem Namen der USB-HDD nicht mehr "Linux Bootloader" in Klammern steht sondern plötzlich "Windows Bootloader" und damit dasselbe wie bei der SystemSSD.
 
prian schrieb:
Wenn das Laufwerk von Linux nicht da war, dann stand der Grub nur dämlich rum und konnte nichts machen außer einer Fehlermeldung anzeigen, da ja alles was benötigt war auf einem Laufwerk wohnte, dass nicht anwesend war.
Ist sowas wie der "Klassiker" der Fehler, der bei der UEFI-Installation von einem Linux auf einer separaten Disk gemacht werden kann.
Der Fehler ist freilich nicht vom Anwender sondern von der Installationsroutine verschuldet, die ungeachtet der Auswahl durch den Anwender den Eintrag für Linux immer in die erste gefundene EFI-Partition schreibt. Folglich ist die separate Disk mit Linux nicht autonom; ihr Boot-Starter befindet sich auf der anderen Disk und der Boot-Starter auf eben dieser anderen Disk findet das zugehörige Linux nicht, wenn dessen Platte fehlt.

Zur Fehlervermeidung beim Installieren sind diese mittlerweile sattsam bekannten Methoden zu nennen (eine davon):
  • interne Festplatte temporär abklemmen (wo der Bootloader nicht hin soll)
  • EFI-Partition der internen Festplatte temporär verstecken (Attribute boot und esp per GParted entfernen)
  • Linux über ein Virtualisierungsprogramm (VirtualBox oder VMware Player) auf die externe Disk installieren (also nicht in eine virtuelle Disk). Nach Abschluß der Installation das installierte Linux normal auf dem Hostsystem booten

Soulwarrior schrieb:
Ich möchte gerne meinen Bootloader für Windows auf der System-SSD (C) lassen und Linux (EndeavourOS aktuell) samt dessen Bootloader auf eine externe HDD, die ich nach Bedarf auch nicht angeschlossen haben kann und dann einfach Windows durchstarte. Keine Ahnung ob da schon der Fehler liegt.
Nee, das ist schon richtig gedacht und auch so machbar.
Eine angeschlossene externe HDD hat für gewöhnlich eine höhere Boot-Priorität. Ergo startet der Linux-Bootloader (normalerweise mit Auswahl für Linux und Windows). Ist die externe Disk aber nicht angeschlossen, bleibt eben nur noch die interne Boot-Disk übrig. Und wenn da nur Windows installiert worden war, startet Windows halt ohne Nachfrage durch.

Wenn wie von Dir beschrieben plötzlich auf beiden Disks nur Windows als Bootloader erscheint, liegt entweder ein Verständnisproblem vor oder es wurde beim Installieren irgendwas falsch gemacht (siehe Abschnitt oben).

Denn grundsätzlich überschreiben sich Boot-Starter nicht auf UEFI-Systemen. Weder Linux noch Windows löschen fremde Starter unter UEFI. Das Äußerste was erlaubt ist, wäre, dass sich eng verwandete Systeme (Ubuntu, Mint und Co) einen gemeinsamen Starter teilen.
 
Ich verstehe das Problem nicht.

B550 / X670 Chipsatz. Mit integrierten UEFI Bootloader kann ich immer von meinem externen USB Stick / externen USB auf NVME Adapter booten.

Mein Backup Laufwerk USB NVME liegt am Schreibtisch und wird nur für Backups angeschlossen.

Wenn man es richtig aufsetzt, sinnerfassend, geht es.
Für die Details verweise ich auf die Grundlagen wie das Gentoo handbuch, gentoo und arch linux wiki, oder ältere Linux Bücher von 2005 oder früher. Dort sollte man noch die Grundlagen erlernen.

@7vor10 Es ist auch eine Holschuld und Informationspflicht des Themnerstellers - Fragestellers.
 
Es würde helfen anzugeben, was für Informationen benötigt werden, kann ja schlecht hellsehen. Ich dachte ich hätte ausreichend viel geschrieben.
 
Soulwarrior schrieb:
Ich dachte ich hätte ausreichend viel geschrieben.
Du hast zweifellos eine Menge geschrieben (StartPost). Nur hat es bis jetzt noch nicht gereicht, um vermuten zu können, woran es hakt.

Möglicherweise liegt auch ein spezieller Hardware-Defekt vor (UEFI nach mißglücktem Update ?). Denn wenn ich das richtig verstehe, ist unmittelbar nach Installationsabschluss noch alles ok; erst in Gefolge von Abstecken und Wiederanstöpseln der externen HDD klappt's dann nicht mehr richtig.

Ich würde daher zunächst einmal die beiden EFI-Partitionen untersuchen (per Linux-Live). Auf der SSD mit Windows sollte neben dem Ordner 'Boot' nur ein Eintrag (Ordner) für Microsoft Windows vorhanden sein und auf der externen USB-HDD nur ein Eintrag für Linux (wie genau der Ordner für EndeavourOS sich nennt, weiß ich nicht). Wenn es anders sein sollte, wäre der Fehler gefunden, aber noch nicht die Lösung.

Vergleiche das nochmals mit der UEFI-Boot-Auswahl, die erscheint wenn Du beim Einschalten F12 (oder eine andere für diesen Zweck gültige Taste) betätigst. Wird da wirklich nur (sinngemäß):
  • Windows BootManager (<SSD>)
  • Windows BootManager (<HDD>)
angeboten?

Du kannst Dir auch zusätzlich noch die Ausgabe von 'efibootmgr' im Terminal anschauen. Der Befehl listet alle BootStarter auf allen gerade angeschlossenen Datenträgern und zeigt auch deren Prioritäten an.

Notfalls HDD nochmals platt machen; dann als GPT-Datenträger initialisieren und mit einer gültigen ESP-Partition versehen, sowie (mindestens) einer Partition für das zu installierende Linux.

Vor dem Installieren nochmal einen Blick auf die Vorsichtsmaßnahmen werfen (hier im Thread Post #4), die zu berücksichtigen sind, wenn vor der Installation mehr als eine Platte mit einer gültigen EFI-Partition angeschlossen ist, und dann eine der genannten Präventionsmaßnahmen nutzen.
(Hinweis: das ist zumindest nötig bei Ubuntu-basierten Linuxen; ob das auch für EndeavourOS gilt, entzieht sich meiner Erfahrung.)
 

Ähnliche Themen

C
Antworten
0
Aufrufe
743
Chris<>Striker
C
Zurück
Oben