• Diese Seite verwendet Cookies. Indem du diese Website weiterhin nutzt, erklärst du dich mit der Verwendung von Cookies einverstanden. Erfahre mehr

FreeBSD bootet nach Upgrade auf 12.1 nicht mehr

OsunSeyi

Well-Known Member
Themenstarter #1
Hi allerseits,

Habe gestern das System 12.0 mit freebsd-update fetch und install auf den neuesten Stand gebracht, danach (dummerweise) auf ein reboot verzichtet, und nach dem Aktualisieren direkt auf 12.1 upgegraded. Grund war eigendlich, weil eine entsprechende Warnung während des Aktualisierung auftauchte.

Danach also nach Handbuch die folgenden Schritte durchgeführt:

- freebsd-update -r 12.1-RELEASE upgrade
- nennenswerte Anpassungen von Konfigurationsdateien wurden nicht angefragt
- Sicherung von "home", "etc", "loader.conf"
- freebsd-update install
- shutdown -r now

Was soll ich sagen - der Bootloader wird nicht geladen, es erscheint ein Prompt "_" ohne Eingabemöglichkeit.

Grundsätzlich bin ich etwas erschrocken, weil ich hoffte ein Upgrade wäre relativ unproblematisch.
Ich könnte die InstallationsCD zu Hilfe nehmen, wollte aber doch vorher nachfragen, wie ich weiter vorgehen kann.

viele Grüße und einen schönen Sonntag!
Tom

ps
hier einen Forumsbeitrag gefunden, na mal sehen...
 
Zuletzt bearbeitet:

pit234a

Well-Known Member
#2
Guter Rat muss nicht teuer sein: spiel es einfach neu auf (also 12.1) und benutze deine Backups.
Alles andere, was auch in dem zitierten Thread so beschrieben wird, verursacht viel Kopfarbeit und das bedeutet Nachdenkschmerzen bei bestehender Gefahr, nach viel Arbeit doch etwas zerschossen zu haben.

Alternativ könnte das Backup des alten Systems zurück gespielt werden und dann ein erneuter Versuch mit freebsd-update gemacht werden. Die Chancen stehen gut, dass es durchläuft (bei mir lief das auf zwei unterschiedlichen Rechnern gut), aber es könnte genauso wieder in die Hose gehen. Deshalb dürfte es einfacher und schneller sein, gleich 12.1 neu aufzusetzen.

Nur den Bootloader selbst neu zu laden, etwa den MBR oder GPT-Bootcode neu zu schreiben, kann man natürlich probieren. Ich weiß nicht, ob ich das machen würde. Wahrscheinlich schon. Wahrscheinlich würde ich sogar den alten FreeBSD-Loader auf einen Stick setzen und versuchen, damit zu booten. Weil ich so ein unverbesserlicher Bastler bin. Schneller und sicherer ist bestimmt, einfach das System neu zu installieren.
 

OsunSeyi

Well-Known Member
Themenstarter #3
Alternativ könnte das Backup des alten Systems zurück gespielt werden
Äh ja, aber es gibt nur ein Backup von 'etc' 'home' und 'loader.conf'
Müsste ich nicht ein Backup von 'boot' dafür haben?

Kann ich nicht von der InstallationsCD aus den Kernel auf der Platte booten?
Oder mit 'fakeroot' 'freebsd-update' nochmal durchlaufen lassen?
Hab den Bootloader von der CD geladen, der wartet jetzt auf eine Eingabe...

Ach und überhaupt:
Für Slackware würde ich 8 Jahre Sicherheitsupdates bekommen..
Wie machst Du das denn so... ich meine, immer alle Jahre wieder ganz neu installieren ist ja nicht der Brüller...
 

pit234a

Well-Known Member
#4
Wie machst Du das denn so... ich meine, immer alle Jahre wieder ganz neu installieren ist ja nicht der Brüller...
Nunja.
Irgendwann mit Wechsel von 8 auf 9, meine ich, musste ich mal neu installieren und dann, als ich komplett neue HW angeschafft hatte mal wieder. Ansonsten funktionierten bei mir die freebsd-updates bisher und die Fehler, die ich selbst eingebaut hatte, konnte ich korrigieren.

Äh ja, aber es gibt nur ein Backup von 'etc' 'home' und 'loader.conf'
Müsste ich nicht ein Backup von 'boot' dafür haben?
das ist blöd und genau ein großer Vorteil von ZFS: ich mache einfach einen Snapshot bevor ich update, zumindest, wenn ich auf eine neue Version hinaus möchte. Misslingt das und ich habe nicht die Nerven, Fehler zu suchen, rolle ich einfach den Snapshot zurück. Wobei ich bisher nie das Problem hatte, dass ein System nicht mehr bootete. Das macht das Leben ungleich schwerer.

Kann ich nicht von der InstallationsCD aus den Kernel auf der Platte booten?
Oder mit 'fakeroot' 'freebsd-update' nochmal durchlaufen lassen?
Hab den Bootloader von der CD geladen, der wartet jetzt auf eine Eingabe...
da muss ich passen. Wie eben erwähnt, habe ich quasi keine Erfahrungen mit Insallations-CDs, zumindest nicht mit aktuellen. Ich weiß nicht, was die an Optionen bieten. Du müsstest jedenfalls den Speicherort des Kernels erreichen können, wenn du den booten möchtest. Und wenn du diesen erreichen kannst (was etwa mit einem Live-FreeBSD gelingen sollte), könntest du auch andere Orte erreichen und weitere Sicherungen, also Backups vornehmen. Ich erwähne da nur mal /usr/local.
Das wäre mir zunächst wichtiger, als das System irgendwie zu starten. Dafür hat man dann immer noch Zeit.
 

OsunSeyi

Well-Known Member
Themenstarter #5
Also ich hab damit ein wenig rumgespielt und kann mit der CD nicht, wie in man boot beschrieben, einen Prompt in der Form:

>>FreeBSD/x86 BOOT

..bekommen. Dort könnte man einen Kernel spezifizieren (wie ich das verstanden habe) ist mir aber nicht gelungen.

Die andere Alternative, mittels der Life-CD "/usr/local" zu retten, ist nix für mich.
Erstens müste ich das Tastaturlayout ändern, um überhaupt was machen zu können, dann das Einhängen des Sticks usw - nee lieber nicht.

Also ist das Ding irgendwie hochfahren und 'freebsd-update' ein zweites Mal probieren irgendwie nicht verkehrt.
Aber ganz ehrlich: warum geht das nicht so mal eben von der CD ???

Irgendwie fühl ich mich wie in Kacke getreten... und wollte mir auch nicht den Sonntag durch stundenlanges rumprobieren verderben.
Also vor dem nächsten upgrade ist ein Systembackup Pflicht...

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
HA !!!

Ein Wunder ist geschehen... Hab die CD wieder weggelassen und er ist wieder ganz am Anfang hängen geblieben.

Und dann eine beliebige Taste gedrückt, erscheint also besagtes ">>FreeBSD/x86 BOOT"
Dann Enter, und er fährt wie geschmiert wieder hoch!

Ich weiß nicht, was ich sagen soll... :-))

Oben hatte ich geschrieben:
es erscheint ein Prompt "_" ohne Eingabemöglichkeit
na, wohl ungetestet...

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Was bleibt sind trotzdem ein paar Kleinigkeiten:

- Ein Backup auf einen VFAT (oder so) formatierten USB-Stick könnte schlecht sein, weil die Dateirechte uU
danach nicht mehr passen?

- Wie kann ich das System ggF von der CD booten?
 
Zuletzt bearbeitet:

OsunSeyi

Well-Known Member
Themenstarter #6
Ok, hab alles nach Handbuch zuende geführt.

Jetzt bootet er aber trotzdem nicht mehr.
Alles klappt bis direkt nach dem (hier automatischem) Login:

Code:
Daemon0: cannot bind: Can't assign requested address
Aug 30  .... BSD sm-mta[630]: daemon Daemon0: problem creating SMTP socket
Aug 30  .... BSD sm-mta[630]: NOQUEUE: SYSSERROR(root): opendaemonsocket: daemon Daemon0: server SMTP socket wedget: exiting
Danach genügt ein Enter, um sich einzuloggen und startx startet normal.
Allerdings funktioniert das Touchpad nicht mehr...Maus geht.
 

pit234a

Well-Known Member
#7
- Ein Backup auf einen VFAT (oder so) formatierten USB-Stick könnte schlecht sein, weil die Dateirechte uU
danach nicht mehr passen?
die Dateirechte könnte man sich wieder holen, also neu setzen. Das muss manchmal auch gemacht werden. FAT hat aber auch andere Begrenzungen. Ich mache so was am liebsten über Netzwerk und zwar eh regelmäßig, allerdings nicht das komplette System. Das ist doch im Zweifel schnell neu aufgesetzt. Will man ein komplettes Systembackup machen und hat kein ZFS, dann gibt es diese Seite im Handbuch:
https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/backup-basics.html
die einem eigentlich alles erklärt. dump und restore heißen die Zauberwörter und damit können gepackte Sicherungen erstellt werden.
Dabei ist zwar grundsätzlich das Dateisystem im Empfänger egal, wenn man aber auf USB-Medien angewiesen ist und diese dann in ein FreeBSD (ohne zusätzliche SW) einbinden möchte, geht es halt sehr einfach mit UFS (oder natürlich ZFS).

- Wie kann ich das System ggF von der CD booten?
https://www.bsdforen.de/threads/boo...oder-sd-karte-installieren.33892/#post-295937
und Umgebung mal lesen.
Also. Die CD ist ein eigenes System und das bootet ja schon. Du hast ja dann ein geladenes System? (Wie gesagt, ich habe da wenig Erfahrung).
Wenn es da ein Menü gibt, in dem man ein anderes System zum Booten auswählen kann, dann muss dieses eben erreichbar sein und womöglich auch bootbar. Es kann zwar sein, dass die CD einen ähnlich effektiven Bootloader drauf hat, wie der boot0, aber das glaube ich eher nicht.
Also, um ein System zu booten, dessen Bootloader nicht funktioniert, das aber ansonsten in Ordnung ist, könnte dieser boot0 auf einem Stick helfen. Sehr einfach helfen. Es täte womöglich auch ein GRUB, aber wer kennt sich damit schon aus?
Du verstehst?
Booten ist ein echt komplexer Vorgang und dazu gehören viele Komponenten und nicht alle lassen sich auf gleiche Art und Weise ersetzen oder umgehen. Ein Installations oder Live-System ist per se nicht dafür gemacht, fremde Systeme zu starten, die vielleicht auch noch irgendwo verfügbar sein können.
 

OsunSeyi

Well-Known Member
Themenstarter #8
Vielen Dank für die ausfürliche Antwort!
Ich werde mich darum kümmern...!

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Code:
Daemon0: cannot bind: Can't assign requested address
Aug 30  .... BSD sm-mta[630]: daemon Daemon0: problem creating SMTP socket
Aug 30  .... BSD sm-mta[630]: NOQUEUE: SYSSERROR(root): opendaemonsocket: daemon Daemon0: server SMTP socket wedget: exiting
Allerdings funktioniert das Touchpad nicht mehr...Maus geht.
Kann es sein, daß die Fehlermeldung genau daher kommt?

Kann ich den Befehl freebsd-update -r 12.1-RELEASE upgrade evtl nochmal aufrufen, um zu prüfen, ob tatsächlich alles stimmt?

Oder sollte ich dafür einen neuen Beitrag aufmachen?
Vielleicht gibt es ein extra Paket für Thinkpad?
 

mr44er

moderater Moderator
Mitarbeiter
#9
Kann ich den Befehl freebsd-update -r 12.1-RELEASE upgrade evtl nochmal aufrufen
Das sollte klappen, ja.

Es gibt für IBM-Zeugs ein Kernelmodul, ob das Pad dazugehört, weiß ich nicht. Das Problem insgesamt liegt aber sicher nicht daran.

Geh die Schritte nochmal durch und boote dazwischen, bis nichts mehr an Updates da ist. Im Normalfall 3x.
 

OsunSeyi

Well-Known Member
Themenstarter #10
Das System scheint (nach reboot) sonst ganz zufrieden zu sein:

Code:
$ sudo freebsd-update -r 12.1-RELEASE upgrade
src component not installed, skipped
freebsd-update: Cannot upgrade from 12.1-RELEASE to itself

$ sudo freebsd-update fetch
src component not installed, skipped
...
No updates needed to update system to 12.1-RELEASE-p8.
Was mach ich denn jetzt mit meinem Touchpad?

Aus 'messages':

Code:
Jun 27 16:15:31 BSD kernel: Firmware Warning (ACPI): 32/64X length mismatch in FADT/Gpe0Block: 64/32 (20181003/tbfadt-748)
Jun 27 16:15:31 BSD kernel: Firmware Warning (ACPI): Optional FADT field Gpe1Block has valid Address but zero Length: 0x000000000000102C/0x0 (20181003/tbfadt-796)
 

OsunSeyi

Well-Known Member
Themenstarter #14
Hast du moused_enable="YES" in /etc/rc.conf?
Jupp, das war's! Hatte ich schon drin, aber auskommentiert. War vorher nicht erforderlich.
Jetzt geht das ganze...

Aber:

Code:
Daemon0: cannot bind: Can't assign requested address
Aug 30  .... BSD sm-mta[630]: daemon Daemon0: problem creating SMTP socket
Aug 30  .... BSD sm-mta[630]: NOQUEUE: SYSSERROR(root): opendaemonsocket: daemon Daemon0: server SMTP socket wedget: exiting
Kommt trotzdem noch und verhindert den Autologin. Wenn ich mich manuell einlogge, sucht er trotzdem fleißig weiter.
Wie kann ich dahinter kommen, was das ist?
 

OsunSeyi

Well-Known Member
Themenstarter #16
Code:
$ sockstat -l4p25
USER     COMMAND    PID   FD PROTO  LOCAL ADDRESS         FOREIGN ADDRESS     
root     sendmail   599   4  tcp4   127.0.0.1:25          *:*
 

OsunSeyi

Well-Known Member
Themenstarter #18
Jupp, Fehlermeldung ist weg.
Nein, der SMTP-Server ist nicht gewollt...

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Leider funktioniert die passwortfreie automatische Anmeldung nicht mehr.

Passwortfreie Anmeldung konnte wärend des Installationsprozesses per Häckchen eingerichtet wurde,
es wird auch jetzt kein Passwort abgefragt. Ein Loginmanager wird nicht verwendet.

Der Bootvorgang lief bis zum Loginprompt, und dann von alleine weiter.
Jetzt muss ich mich mit 'tom' anmelden (ohne Passwort) und dann 'startx' aufrufen.

Das folgende klappt also nicht mehr, ist aber noch da:

In "/etc/rc.local":
Code:
/usr/home/tom/CONF/ROOT/STARTX.sh &
In "STARTX.sh":
Code:
sleep 5
su -l tom -c /usr/local/bin/startx &
 

pit234a

Well-Known Member
#20
Code:
freebsd-version -ukr
zeigt dir die unterschiedlichen Versionen der FreeBSD-Bestandteile.

Also, ich mache IMMER nach einem freebsd-update auch ein pkg upgrade.
Nunja, ich mache häufiger ein pkg upgrade als ein freebsd-update, aber ganz besonders nach einem freebsd-update -r würde ich nicht ohne ein anschließendes pkg upgrade überhaupt irgendwas weiter machen.

Ansonsten kannst du doch wie üblich das script von Hand aufrufen und mittels -v oder -x genauer hinsehen, was geht und was hängt.
Grundsätzlich solltest du einen shebang setzen, um die gewünschte Shell auch zu treffen.
Viel Unterschied macht das nicht, insbesondere bei so einfachen Kommandos, die quasi von jeder shell gleich ausgewertet werden.
Es ist halt mit treffendem shebang eindeutiger (und auch flexibler).

Ich glaube nicht, dass mit 12.1 irgendeine shell sich geändert hat oder Rechte an Programmen oder auch Gruppenzugehörigkeiten wirklich neu geworden sind. Was bei mir schon mal (mehrfach) vorgekommen ist, dass nämlich irgendwelche Abhängigkeiten sich aufgelöst hatten und dadurch nicht immer alles wieder installiert wurde, was ich gebraucht hätte. Wahrscheinlich hätte ich darauf auch Hinweise in den Installationsmeldungen gesehen, wenn ich denn gelesen hätte. Zuletzt fehlte zB xrdb.