OpenBSD-Installation unter UEFI scheitert

kraekers

Well-Known Member
Moin liebes Forum,

folgendes Problem ! Ich bekomme es einfach nicht auf die Rille OpenBSD 7.5 unter UEFI zu installieren.

In der Vergangenheit hatte ich auf dem System, auf dem jetzt OpenBSD 7.5 installiert werden soll, OpenBSD 7.2 auf einer externe SSD ohne Probleme installiert.

Auf eine interne SSD OpenBSD zu installieren funktioniert jedoch nicht.

Die Installation erfolgt von einem USB-Stick, erstellt vom install75.img und wird als UEFI-Installationmedium gefunden.

Das BIOS wurde in CSM auf "UEFI only" umgestellt.

Die interne Bootplatte bereite ich wie folgt vor:

Code:
# cd /dev && sh MAKEDEV sd0
# cd /
# dd if=/dev/zero of=/dev/rsd0c bs=1m count=1
# fdisk -iy -g -b 960 sd0

Bei der Installation nutze ich "whole Disk (G)PT" und z.Z. "(A)uto layout)", wobei unter I eine MSDOS-Partition vorhanden ist. War damals zumindest
nötig, weiß jetzt nicht wie es heute mit I ausschaut.

Die Installation läuft sauber, ohne Fehler, durch.

Nach dem Boot wird nichts gefunden und es wird gefragt, ob ich das Diagnose-Tool aus dem BIOS starten soll.

Ich habe mir einen Wolf gegoogelt und finde einfach keine Antworten.

Vielleich hat ja noch jemand von Euch einen Tipp oder kann auf einen Gedankenfehler hinweisen.

Ich danke im Voraus,

beste Grüße

kraeker
 
Hier läuft ein OpenBSD 7.5, das im UEFI Modus ohne Probleme installiert wurde. Wie bin ich vorgegangen? Eine MSDOS Partition für die SSD habe ich vorher mit gparted angelegt. Einzig habe ich im BIOS Security Boot deaktiviert. Die Grundinstallation lief reibungslos durch und nach einem reboot funktionierte OpenBSD einwandfrei. Habe auch mit install75.img installiert, die ich vorher auf einen mit Ventoy vorbereiteten USB Stick geschrieben habe, mit dem ich anschließend bootete. Dein Problem hatte ich auch, wenn ich zwischendurch mal zum Test ein Linux installierte, dann funktionierte anschließend eine Neuinstallation nicht wie bei Dir. Nun, dann habe ich wie beschrieben auf der SSD alles gelöscht und besagte MSDOS Partition angelegt und dann ging es wieder. Vielleicht hilft Dir das.
 
Zuletzt bearbeitet:
Moin,

vielen Dank für die Rückmeldung. Ich habe beide Hinweise durchgeführt, leider ohne Erfolg.

@ midnight

Der Wert 960 stammte einmal von Dir :)

https://www.bsdforen.de/threads/openbsd-unter-uefi-installieren.36286/post-326609

Unter Legacy Boot kann ich OpenBSD ohne Probleme installieren. Mal schauen ob ich es so lasse. Oder würde etwas gegen Legacy sprechen,
braucht man unbedingt UEFI?

Die Datenplatten kann ich ja mit GPT einrichten und die Bootplatte hat nur 230 GB, somit dürftes auch kein Problem mit der 2 TB Grenze geben.

Ansonsten werde ich es noch einmal probieren CSM ganz zu deaktivieren. Benötige dann jedoch ein DVI auf HDMI Kabel, da meine eingebaute Graka dann kein Bild mehr liefert und ich auf die interne ausweichen müsste.

Ich danke Euch

Beste Grüße

kraekers
 
Oder würde etwas gegen Legacy sprechen,
braucht man unbedingt UEFI?
Klares Jein* :)

Ansonsten werde ich es noch einmal probieren CSM ganz zu deaktivieren. Benötige dann jedoch ein DVI auf HDMI Kabel, da meine eingebaute Graka dann kein Bild mehr liefert und ich auf die interne ausweichen müsste.
*Deswegen. CSM komplett aus ist nicht das Gleiche wie CSM auf irgendeinen Modus gesetzt.
Versuche mal dein Vorhaben erneut mit komplett deaktiviertem CSM und der onboard-GPU, ggf. die GPU ausbauen, falls diese den Boot verhindert. Muss nicht sein, aber rate ich jetzt mal und vielleicht ist das sogar das Hauptproblem.
Der Hintergrund ist, dass die Firmware dieser GPU kein UEFI kann und daher wahrscheinlich vor ~2016 zu datieren ist. Für nicht ganz absurd antike nvidias gibts jenes: https://www.nvidia.com/en-us/drivers/nv-uefi-update-x64/

Ist sie älter, würde ich sie entsorgen und mir was aktuelles holen bzw. nur onboard nutzen. Mhmja oder eben mit der alten und legacy-boot leben.
Je nachdem wie sich das lösen lässt und du dennoch einen DVI-Adapter willst, kauf nicht blind den billigsten. Genau hingucken, sonst klappts/passts nicht.
 
So, DVI auf USB-Adapter wurde geliefert, habe ein Bild. CSM komplett deaktiviert. Graka ausgebaut. Leider startet meine Installation, nachdem ich alles neu aufgesetzt habe, immer noch nicht. Bin echt am verzweifeln.

Ich habe jetzt mal eine andere SSD verbaut und die Installation erneut durchgeführt. Boot funktioniert immer noch nicht. Dann habe ich die SSD ausgebaut und in ein externes Gehäuse gepackt und über USB gebootet. Und voila, funktioniert. D.h. die Installationen haben grundsätzlich funktioniert, es werden aber nur externe UEFI Geräte gebootet und gefunden, interne nicht. Schon mysteriös. Ich finde im BIOS aber auch keinen Schalter um dies zu ändern.
 
Zuletzt bearbeitet:
Etwas Trivia, das scheint hier aber nicht zum Tragen zu kommen: manche Boards machen zwischen den Wechseln CSM an/aus 2x einen reboot, bis das jeweils "scharfgestellt" ist. Dürfte der Wechsel von den jeweiligen oproms der Karten sein.
Hast du secure boot deaktiviert? Möglicherweise greift das bei externen Medien nicht (weswegen du dann von USB booten kannst) und es kann sein, dass man den erst deaktivieren kann, wenn man die Keys deaktiviert/"gelöscht" hat.

Bekommst du im BIOS dein Bootmedium zweimal angezeigt? Wenn ja, versuche beide, eins davon sollte dann klappen. Das wäre dann einmal EFI-Eintrag und einmal GPT.

Eventuell fehlt für EFI-Partition auch noch was, aber da fehlt mir die Erfahrung.

Mal anders: Was für ein Board ist das und läuft darauf die aktuellste Firmware? Es wäre nicht das erste Board, wo das verbuggt wäre.
 
Secure Boot ist deaktiviert, die Keys habe ich auch gelöscht. Die Medien werden nur einmal angezeigt.

Der Rechner ist nicht mehr der neueste und dient nur als Server. Es handelt sich um ein Fujitsu Esprimo D756, dass Board ist ein D3431-A14.
 
Ich finde im BIOS aber auch keinen Schalter um dies zu ändern.
was ich sage, ist nun ohne jeden Bezug zu OpenBSD und @mr44er hat dazu schon einige Dinge gesagt.
Die gleiche Installation läuft von extern über USB! Meist würde man hier eher Probleme erwarten, als bei intern verbauter SSD.
Mir sieht das stark danach aus, dass etwas im BIOS anders eingestellt / ausgewählt werden muss oder es eine Macke hat.

Gefährliches Halbwissen: eine EFI muss nicht auf dem gleichen Datenträger liegen.
Ich habe das nun nicht wirklich parat und mag mich irren, aber ich glaube, dass ein Stick, auf dem nur die passende EFI liegt, auch ein internes System booten kann, wenn die loader-datei darauf den Kernel am passenden Platz findet. Vielleicht noch ein weiterer Versuch, Fehler zu finden.
 
Witzig, als hätte ichs geahnt mit FSC. Bei denen ist das so mit 2x reboot.
Ist da zufällig noch weitere Hardware gesteckt, die auch kein UEFI kann?

Vielleicht hilft das weiter?

Ist das BIOS so neu, dass es "Boot Option Policy" hat? Im Zweifel bringts vielleicht was, das ganze Board mittels Jumper zu resetten.
Mit OpenBSD und seinen Bootfeinheiten kenne ich mich auch nicht aus, mit FreeBSD hatte ich aber ähnliche Mätzchen mit einem älteren FSC. Es geht aber definitiv.
Vielleicht kannst du es vorher mit Windows austesten. Entweder mit dem MS-Tool oder rufus eine win11-iso draufschreiben. Wenn UEFI-Boot (vom Stick) klappt, hast du das wabernde Logo. Wenn es nur die drehenden Punkte im Kreis sind, ist es legacy.
Dann mal fix durchinstallieren und schauen, ob der Boot von der SSD klappt (am SATA-Port.)

Edit: ganz wichtig!
Seite6 in dem oben verlinkten PDF:
Operating systems that were installed on a device in UEFI boot mode (“ CSM” = “Disabled”) will not be able
to boot if the boot mode is changed to legacy BIOS mode (“ CSM” = “Enabled”) and vice versa. So prior to
changes in the UEFI / BIOS setup utility or exchange of the mainboard, please check which boot mode was
used to boot the operating system!
Das heißt also, dass du ggf. den Stick mit zwei Bootmöglichkeiten (UEFI aka Windows irgendwas, obwohl du kein Windows bootest und eben legacy) angezeigt bekommst. Bei FreeBSD erkennt man das an der kleinen Schrift (native Auflösung), wenns klappt.
 
Mir ist nicht so ganz klar warum du:

# fdisk -iy -g -b 960 sd0

überhaupt machst - der installer macht das doch alles schon sauber für dich?

Kannst du mal schauen was auf der "i" Partition so vorhanden ist mit ls nach der Installation? Wie groß und wo wird i abgelegt?

Secure Boote etc ist natürlich aus?
 
Ich hatte jetzt beim neuen Aufsetzen # fdisk -iy -g -b 960 sd0 weggelassen. In der Vergangenheit hatte ich eine Fehlermeldung und dies als Tipp bekommen.

Mit # ls kann ich die Partition nicht sehen. Sie ist 260 MB groß und wird auf der Bootplatte abgelegt, ist eine MSDOS Partition. Secure Boot ist aus.
 
Du könntest sie mounten ... theoretisch auch mit jeden anderen Betriebsystem. Mir gehts darum ob überhaupt die Basics stimmen, also ob da wirklich ein Dateisystem drauf ist und auch wirklich die .efi dateien da sind.

Nicht das da irgendwas einfach schief läuft, das würde das erklären. Ich fange immer gerne bei so Fehlersuchen erstmal an zu schauen ob wirklich alles da ist was für den Boot benötigt wird.

Du hattest ja ursprünglich mal

dd if=/dev/zero of=/dev/rsd0c bs=1m count=1

fdisk -iy -g -b 960 sd0

Gemacht - hattest du dann mit "dd if=/dev/zero of=/dev/rsd0c bs=1m count=1" was auch immer "fdisk -iy -g -b 960 sd0" angerichtet hat negiert?

 
Also, das macht mich alles sehr nachdenklich. Scheint wohl so zu sein, das eine erfolgreiche Installation von OpenBSD sehr von der Hardware und vom BIOS abhängt? Dann habe ich einfach nur Glück gehabt, das alles passte? Gut, mein HP Elitedeskop Mini PC ist auch schon etwas in die Jahre gekommen (8 Jahre), aber das BIOS ist einfach gut und lässt keine Wünsche offen. Wenn ich das Bootmenu mit ESC aufrufe, werden alle angeschlossenen Devices angezeigt, egal ob Legacy oder UEFI. Im BIOS selbst kann ich natürlich Securityboot deaktivieren und einzeln einstellen, ob ich Leagacy oder UEFI, oder beides benutzen will. Das finde ich komfortabel. Das BIOS wurde vor ein paar Monaten auf den aktuellen Stand gebracht, was auch einfach ging.
 
Moin,
ich hatte gestern Abend noch einmal FreeBSD mit UEFI installiert und der Rechner findet sofort das Betriebsystem im BIOS. Es wird auch ohne Problem gebootet. Danach habe ich wieder OpenBSD installiert und es funktioniert wieder nicht. Ich habe den ganzen Abend gegoogelt und viele Stimmen gehört, dass OpenBSD einfach auf bestimmten Geräten nicht zum Laufen zu bewegen ist, zumindest was UEFI betrifft. Ich habe mich jetzt damit beholfen, dass ich eine externe SSD nutze und dort OpenBSD installiert habe, damit kommt das BIOS komischerweise klar.
 
Schaue ich mir auch mal an, wobei ich auch keinen Bock habe, nach jedem Update rumfrickeln zu müssen. Ich glaube, dass es eine externe Platte auch macht.
 
Also, das macht mich alles sehr nachdenklich. Scheint wohl so zu sein, das eine erfolgreiche Installation von OpenBSD sehr von der Hardware und vom BIOS abhängt?
Dann habe ich einfach nur Glück gehabt, das alles passte? Gut, mein HP Elitedeskop Mini PC ist auch schon etwas in die Jahre gekommen (8 Jahre), aber das BIOS ist einfach gut und lässt keine Wünsche offen. Wenn ich das Bootmenu mit ESC aufrufe, werden alle angeschlossenen Devices angezeigt, egal ob Legacy oder UEFI. Im BIOS selbst kann ich natürlich Securityboot deaktivieren und einzeln einstellen, ob ich Leagacy oder UEFI, oder beides benutzen will. Das finde ich komfortabel. Das BIOS wurde vor ein paar Monaten auf den aktuellen Stand gebracht, was auch einfach ging.

Das ist eigentlich quasi-standard - egal ob Dell, Lenovo, Asus, ASRock, MSI ... ich kenn das nur so - das ist nicht Komfortabel sondern Basic, ähnlich wie die Frage ob man Wischwasser, Benzin und Öl bei nem Verbrenner nachfüllen kann ;)

Ich habe den ganzen Abend gegoogelt und viele Stimmen gehört, dass OpenBSD einfach auf bestimmten Geräten nicht zum Laufen zu bewegen ist, zumindest was UEFI betrifft.

Also das nehme ich so nicht wahr, ich lese z.B. auch viel auf den @misc Mailinglisten mit und hab davon eher wenig gelesen. Bislang hat auch jedes UEFI-System bei mir noch mit OpenBSD geboootet. Es gibt natürlich 1,2 Fallstricke, die gelten aber meinen empfinden nach für jedes *BSD und in teilen auch für Linux.

OpenBSD legt soweit ich weiß keinen UEFI-Eintrag im NVRAM an, d.H. verlässt sich etwas auf den Alternativweg das die UEFI-Firmware des Gerätes in der UEFI-Partition nach einer .efi Datei im passenden Ort sucht und dann davon bootet.

Wenn das bei deinem Bord nicht der fall ist, ist es sicher sinnvoller anstelle "unqualifiziert rumzugoogeln" zu schauen wo technisch das Problem liegt und es dann zu lösen.

Wenn die .efi Dateien vorhanden sind, aber das System nicht davon bootet, könntest du schauen ob es hilft die umzubenennen oder in einen "passenderen" Ordner zu verschieben oder beides. Wenn das System eine EFI-Shell hat, könntest du wie hier auch schonmal vorgeschlagen schauen ob das System die Ordner überhaupt "sieht". Meist hat die Shell auch sowas wie "ls" oder sogar eine art CLI-Gui dafür.
Bei einem Windows / OpenBSD Mutliboot mit beiderseits FDE (Bitlocker unter Windows) musste ich für OpenBSD mal ein paar größere Klimmzüge machen. Dort habe ich dann (Mit einem Windows Gui Programm, schande über mich) einen eintrag ins NVRAM des Gerätes geschrieben, ich könnte mir vorstellen das dies dir hier auch helfen könnte.
 
Ich fahre FreeBSD unter proxmox ohne EFI-partition. Damit das klappt, musste ich diesen da machen:
cp /boot/loader.efi /boot/efi/efi/boot/bootx64.efi

Evtl. lässt sich das auf OpenBSD adaptieren.
 
Zurück
Oben