pkg_add -u funktioniert nach sysupgrade nicht

Tatzahn

Well-Known Member
Hei,
pkg_add funktioniert nach einem sysupgrade auf OpenBSD nicht mehr. Das Programm läuft durch, produziert einen Haufen Fehlermeldungen und Programme wie Firefox starten nicht mehr. Beim nächsten Aufruf geht alles von vorne los.
Kann wer sich mal die Datei im Anhang anschauen? Das ist heute definitiv nicht mein Tag :(.
 

Anhänge

Hattest Du vorher evtl. -current installiert und nun auf 7.7 geswitcht? Hast Du Packages und Port gemischt?

Was sagt denn:
Code:
$ uname -a
$ cat /etc/installurl
$ pkg_check

So ein Problem hatte ich ehrlich gesagt in den letzten 18 Jahren auf keinem meiner Rechner unter OpenBSD. Evtl. hast Du was grundlegendes veraendert?

Notfalls kann man das fixen, indem man die Pakete neu installiert und damit die Paketdatenbank neu aufbaut. Dazu am besten wie folgt vorgehen:

1. Installierte Pakete ohne Versionsnummern in einer Liste speichern: $ pkg_info -mz > ~/package_list
2. Alle installierte Pakete deinstallieren (sollte man nicht im wm machen, sondern im tty, also X11 vorher beenden): $ doas pkg_delete -X
(Es wird gefragt, ob die Firmware auch deinstalliert werden soll. Hier jeweils n auswaehlen.)
3. Nochmal schauen, ob wirklich alles ausser der Firmware deinstalliert ist: $ pkg_info
4. Pakete wieder neu installieren: $ doas pkg_add -zl ~/package_list
5. Rebooten und hoffen, dass es damit gefixt ist
 
Code:
#uname -a
OpenBSD dellbsd.fritz.box 7.7 GENERIC.MP#625 amd64
#cat /etc/installurl
https://ftp.spline.de/pub/OpenBSD
#pkg_check
läuft ohne Fehlermeldung durch
@midnight
warum sollte ich was grundlegendes verändert haben? Ich bin hier mehr oder weniger nach den Anleitungen vorgegangen, ohne groß zu experimentieren ...

ich gehe mal deine Anleitung durch.
 
Ok, mache mal vorher ein $ doas pkg_delete -a und teste dann nochmal ein $ pkg_add -u. Evtl. hattest du noch fehlerhafte Abhaengigkeiten in der Paketdatenbank, weil Du evtl. mal ein pkg_add mit ctrl+c abgebrochen hast? Du hattest nach dem sysupgrade auch die Packages auch mit $ pkg_add -u aktualisiert, oder?
 
Reinstallation läuft schon und bis jetzt ohne Fehlermeldungen. Ich habe pkg_add immer durchlaufen lassen. Nach dem sysupgrade und sysmerge habe ich pkg_add -u normal durchlaufen lassen. Der Packagemanager von OpenBSD kommuniziert ja nicht groß sondern rasselt einfach durch. Das lief bei mir mehrmals die Woche.
Die Reinstallation läuft bis jetzt ohne Fehlermeldungen :).
 
Ist 3. dann pkg_delete -a ? Nach 1. kommt ja schon mal ein automatisches rebootnachsysmerge hab ich noch mal rebootet
 
BtW worin besteht dann "nicht mehr benötigte Dateien entfernen"?

Damit ist laut Upgrade Guide folgendes gemeint:

Perl has been updated to 5.40.1 and some files are no longer needed.

# rm -rf /usr/libdata/perl5/*/PerlIO/scalar.pm \
/usr/libdata/perl5/*/auto/PerlIO/scalar

Manche Pakete benoetigen auch noch haendische Nacharbeit. mariadb oder postgresql z.B. Daher immer den Upgrade Guide lesen. Vor allem die letzten Punkte Configuration and syntax changes, Files to remove und Special packages sollte man ueberfliegen und schauen, ob einen das betrifft und dann entsprechend anpassen und behandeln.
 
Damit ist laut Upgrade Guide folgendes gemeint:

# rm -rf /usr/libdata/perl5/*/PerlIO/scalar.pm \
/usr/libdata/perl5/*/auto/PerlIO/scalar

Manche Pakete benoetigen auch noch haendische Nacharbeit. mariadb oder postgresql z.B. Daher immer den Upgrade Guide lesen. Vor allem die letzten Punkte Configuration and syntax changes, Files to remove und Special packages sollte man ueberfliegen, ob einen das betrifft und dann entsprechend anpassen und behandeln.
ok da könnte der Hase im Pfeffer liegen, weil ich den Schritt ausgelassen habe ...
 
ok da könnte der Hase im Pfeffer liegen, weil ich den Schritt ausgelassen habe ...

Hm ne gaube ich eher nicht. Das sind nicht mehr benoetigte Dateien. Die sollten keine Auswirkungen auf das System haben. Werden halt nicht mehr benoetigt und verwendet. Um das System sauber zu halten, sollte man die entfernen. Muss man aber nicht unbedingt, wenn sie einen nicht stoeren. Aber wer weiss... :-)
 
Nach 1. kommt ja schon mal ein automatisches rebootnachsysmergehab ich noch mal rebootet
Es geht hier beim letzten reboot eher darum, dass die daemons und services, die aus den Paketen installiert wurden, nach einem Update / einer Neuinstallation neu gestartet werden, da das Update der Pakete nach dem reboot stattfindet. Die Neustarts koennen von Hand z.B. mit rcctl restart xyz gemacht werden (xyz durch den Servicenamen ersetzen) oder wenns kurz und schmerzlos sein soll, einfach durch einen weiteren reboot, dann werden alle daemons und services automatisch neu gestartet. Du kannst auch sysmerge und pkg_add -u zusammenfassen und danach erst rebooten.

Man kann auch alle gestarteten daemons und services ohne reboot auf einmal neu starten: # rcctl restart `rcctl ls started`
 
Zuletzt bearbeitet:
ok da könnte der Hase im Pfeffer liegen, weil ich den Schritt ausgelassen habe ...
Hast Du vor dem:
Code:
rm -rf /usr/libdata/perl5/*/PerlIO/scalar.pm
auch ein:
Code:
ls -la /usr/libdata/perl5/*/PerlIO/scalar.pm
ausgeführt? Evtl. war diese Datei bzw. das Unterverzeichnis schon gar nicht mehr vorhanden bzw. schon gelöscht.
 
Hast Du vor dem:
Code:
rm -rf /usr/libdata/perl5/*/PerlIO/scalar.pm
auch ein:
Code:
ls -la /usr/libdata/perl5/*/PerlIO/scalar.pm
ausgeführt? Evtl. war diese Datei bzw. das Unterverzeichnis schon gar nicht mehr vorhanden bzw. schon gelöscht.
Letzteres habe ich nicht gemacht. Ich hoffe beim nächsten Versionswechsel nicht noch mal in so einen Schlamassel zu geraten ...
 
Zurück
Oben