FreeBSD reparieren

-Daemon-

Well-Known Member
Hallo Forum,

ich hab auf meiner Testkiste mit 6.1-Prerelease letztens nicht aufgepasst und hab mir einige wichtige Bibliotheken runtergeschmissen (~80-90% dessen, was Firefox an Libs hat) :ugly: Jetzt hab ich auf dem Rechner einen schoenen Muellhaufen an nicht lauffaehigen Programmen erzeugt, den ich jetzt wieder abtragen - sprich das System reparieren - will. Das X nicht geht, da keine Library/Libraries da ist/sind, ist das kleinere Uebel. Was mir viel mehr Kopfschmerzen macht, ist die Tatsache, das keines der Tools zur Pflege der ports und packages so richtig zur Mitarbeit zu ueberreden ist. Ich bekomme staendig die Aufforderung, 'pkgdb -F' durchlaufen zu lassen um weiterarbeiten zu koennen, doch irgendwie bringt das auch nichts. :(

Kann man da noch irgendwas ohne Neuinstallation retten (Backup der wichtigen Daten hab ich)?

Ich bin fuer jeden Tip dankbar!

Gruss,
Philipp
 
Ich würde erstmal ganz klassisch alles über Bord werfen, was man nicht braucht:
Code:
rm -r /var/db/pkg /usr/local /usr/X11R6
Dann bist du im Prinzip wieder im "Auslieferungszustand". Anschließend alle Packages/Ports, inklusive X, neu installieren. Das müßte dann eigentlich passen.
 
Würd ich nicht versuchen, sag lieber warum pkgdb -F scheitert. Falls du dein system mit
# make delete-old-libs
in diesen Zustand versetzt hast, kannst du das alles mit Einträgen in der /etc/libmap.conf in Ordnung bringen ohne etwas neu zu bauen.
 
/usr/local wegzublasen halte ich fuer eine schlechte Idee, da dann ja auch /usr/local/etc weg ist. Unter /usr/local/share mag auch schon einiges an "eigenen" Daten liegen.

Solange du keine libraries aus /usr/lib oder /lib gekillt hast, sollte es ein 'portupgrade -Oaf' tun. Evtl. muss man das zweimal laufen lassen.
 
@[LON]Kamikaze:
pkgdb -F scheitert, da ich damit nicht alle Dependencies richten kann, da einige einfach nicht mehr da sind...

Das System hab ich durch die gewaltsame Deinstallation von Firefox in diesen Zustand versetzt (pkg_deinstall -f firefox) :ugly:

@MrFixit:
/lib sieht ziemlich leer aus... in /usr/lib ist schon einiges mehr los. Da ich nicht weiss wie viele Libraries da normalerweise residieren, kann ich auch nicht genau sagen wie viel Schaden ich angerichtet hab.
X und alles was irgendwie mit Graphik und GUI zu tun hat geht nicht mehr.

Wenn ich ein Programm von diesem Rechner aus auf meinem "Produktivrechner" starten will bekomme ich folgenden Fehler:
Code:
% xterm
/libexec/ld-elf.so.1: Shared object "libXft.so.2" not found, required by "xterm"
Mit anderen Programmen sieht es aehnlich aus.

Der Inhalt von /libexec:
[CODEls /libexec/
ld-elf.so.1 ld-elf.so.1.old
][/CODE]

Ich hab das Gefuehl, das ich da maechtig was angestellt hab :eek:

Danke euch beiden fuer eure Hinweise! Ich werd' nachher mal weiter an der Loesung dieses Problemes arbeiten.

Gruss, Philipp
 
# portupgrade -fu libXft
oder
# portinstall libXft

Das gleiche bei allen anderen Meldungen fehlender Libraries.
 
Eine gewaltsamme Deinstallation von Firefox erfordert nicht diesen Aufwand. Ich sehe da 2 simplere Möglichkeiten:

-> portupgrade -oar
Sollte dein System wieder fixen. Baut einfach alle Ports neu, fehlende Dependencies oder angeschlagene Pakete werden damit ersetzt

-> portinstall firefox
-> pkg_deinstall firefox
Baut Firefox mit allen Dependencies, also die, die jetzt fehlen, wieder neu. Danach ein korrektes Deinstall ;)
 
-Daemon- said:
Das System hab ich durch die gewaltsame Deinstallation von Firefox in diesen Zustand versetzt (pkg_deinstall -f firefox) :ugly:
Das glaubt dir hier keiner. Denn das einzige was dann passiert ist, dass Firefox nicht mehr geht.
/lib sieht ziemlich leer aus... in /usr/lib ist schon einiges mehr los. Da ich nicht weiss wie viele Libraries da normalerweise residieren, kann ich auch nicht genau sagen wie viel Schaden ich angerichtet hab.
Na du haettest aber zumindest das "ziemlich leer" etwas naeher ausfuehren koennen, oder ist das zuviel verlangt? Bei mir sind 27 Dateien in /lib und 393 in /usr/lib.
 
MrFixit said:
Das glaubt dir hier keiner. Denn das einzige was dann passiert ist, dass Firefox nicht mehr geht.
Hab grad auch gemerkt das es dadurch nicht so weit haette kommen koennen. War ein Schreibfehler von mir :rolleyes:
Auszug aus history:
Code:
    95  18:55   pkg_deinstall -Rf firefox
Dadran lags... Sorry, ich haette etwas laenger nachdenken sollen

MrFixit said:
Na du haettest aber zumindest das "ziemlich leer" etwas naeher ausfuehren koennen, oder ist das zuviel verlangt? Bei mir sind 27 Dateien in /lib und 393 in /usr/lib.
Die beiden Verzeichnisse scheinen in Ordnung zu sein. Mir kam der /lib etwas leer vor; bei mir sind's 54

@[LON]Kamikaze:
portinstall libXft ist durchgelaufen, bei den anderen Libs kamen Build-Fehler.

@all:
Danke fuer die Hilfe. :) Ich glaub' ich bekomm's jetzt selber hin. Lektuere der man-pages und etwas mehr Besonnenheit haetten mir auch nicht geschadet... *indieeckestell* Ich gelobe Besserung!

Gruss und Danke nochmals,
Philipp
 
pkg_deinstall -Rf firefox
Aua, das sollte aber Deine Frage selbst beantworten! Du hast nicht nur Firefox deinstalliert, das -R heiß: alle Pakete, von denen Firefox abhängt. Will sagen, das ganze X11, alle möglichen Bibliotheken wie gtk2 und glib20, daher auch immer die vielen Fehlermeldungen. Einfach händisch nett XOrg/XFree86 neu installieren, dann firefox, ich mach das so:
cd /usr/ports/www/firefox
make FORCE_PKG_REGISTER=yes install clean
Damit sollten auch die abhängigen wieder gebaut werden. Aber, viele Wege führen nach Rom.
 
Erfolgsnachricht

So, das System rennt jetzt wieder in einem akzeptablen Zustand.
Ich hab erst mal nach und nach die wichtigsten Bibliotheken installiert, danach den ganzen GTK-Kram wieder runtergeschmissen, geschaut das es in diesem Zustand lauffaehig ist, X wieder eingerichtet, den nVidia-Treiber wieder installiert (der hat meine ssh-Sitzung immer gekillt - k.A. wieso) und schlussendlich noch auf einen aktuellen Stand gebracht (auf der Kiste laeuft -STABLE). Die deinstallierten Anwendungen muss ich jetzt noch installieren aber das ist ein kleineres Problem. Firefox ist jetzt auch nicht mehr auf der Platte. :)

Danke nochmal fuer die Hilfe!

Gruss,
Philipp
 
Back
Top