Panik - pkg_info zeigt noch einen Port

steinex

Well-Known Member
Hallo,

ich habe vorhin etwas mit dem mysql-server gekämpft, nach mehrmaligen installieren und deinstallieren und einem pkgdb -F zeigt mir pkg_info nur noch einen einzigen Port, obwohl alle Programme noch funktionieren! HILFE!

Habe schon etwas mit pkgdb rumexperimentiert aber ohne Erfolg.

Hat evenutell jemand ne Ahnung wie ich die Ports wiederbeleben kann? Es wäre katastrophal, wenn ich da ernsthaft was zerschossen hab :(

Ein portupgrade -a zeigt mir:

Code:
** 'databases/p5-DBI-137' is marked as IGNORE:
        ": Your system is too old to use this bsd.port.mk.  You need a fresh mak
e world or an upgrade kit.  Please go to [url]http://www.FreeBSD.org/ports/[/url] or a mirr
or site and follow the instructions"

Wird mich ein neukompilieren der kompletten Sourcen retten?


Grüsse,
Frank
 
Zuletzt bearbeitet:
Wenn es schon in der Meldung steht, dann würde ich das mal ausprobieren ;-).
Unter /var/db/pkg findest Du alle installierten packages (ports) und da auch die Datei "pkgdb.db" die für die Infos der installieren zuständig ist.
 
Hallo,

niederschmetternde Nachrichten:

ein neuübersetzen der Sourcen brachte rein garnichts. Es wird immernoch nur der eine Port gezeigt :(

Ebenso ist nur noch dieser eine Port in /var/db/okg zu finden und ich befürchte schlimmstes.

Hat jemand eine Idee wie ich die Portsliste neu generieren lassen kann? Ist dies überhaupt möglich?

Verzweifelte Grüsse,
Frank
 
Hallo,

hättest du meinen Thread richtig gelesen, wüsstest du das ich /var/db/pkg nicht gelöscht habe. Warum sollte ich dies auch tun?

Ein Backup ist leider nicht vorhanden, ja, das ist blöd.

Grüsse,
Frank
 
Sorry, wenn meine Antwort jetzt total daneben ist, aber könntest du nicht mit cvsup den ganzen Portstree wieder ziehen???

carb
 
Original geschrieben von carbuncle
Sorry, wenn meine Antwort jetzt total daneben ist, aber könntest du nicht mit cvsup den ganzen Portstree wieder ziehen???

carb

Hi,

es geht mir nicht darum einen neuen Portstree in /usr/ports zu haben (der ist so gut wie aktuell), sondern mein Problem ist, das mir ein pkg_info nur noch einen einzigen Port ausspuckt. D.h. meine /var/pkg/db ist beschädigt, da nützt mir ein neuer Portstree herzlich wenig.

Ich habe den Tip bekommen ich solle alle Ports einfach neu installieren, aber ich finde das extrem unsauber da das hunderte waren und ich keinesfalls alle wiederfinde. Desweiteren laufen ja alle Programme wie gewohnt, es muss doch eine Möglichkeit geben die installieren Ports neu in die Paketdatenbank einzulesen? :(

Grüsse,
Frank
 
Hmm, wenn die DB der pkg weg ist, sieht es mau aus, würde ich mal sagen. Ist mir bisher noch nicht untergekommen, daher kann ich da nicht aus Erfahrung sprechen.
"pkgdb" (-F) sollte evtl. helfen können, aber das greift im Prinzip auch nur auf die DB zurück. Ist diese weg, isses dumm gelaufen.
Ist das verzeichnis /var/db/pkg denn leer? Steht also nur der eine Port drin?
 
Original geschrieben von asg
Hmm, wenn die DB der pkg weg ist, sieht es mau aus, würde ich mal sagen. Ist mir bisher noch nicht untergekommen, daher kann ich da nicht aus Erfahrung sprechen.
"pkgdb" (-F) sollte evtl. helfen können, aber das greift im Prinzip auch nur auf die DB zurück. Ist diese weg, isses dumm gelaufen.
Ist das verzeichnis /var/db/pkg denn leer? Steht also nur der eine Port drin?

So ist es, in /var/db/pkg finde ich nur noch den einen Port. pkgdb -F bringt auch nix.

Ich setze jetzt nochmal eine Mail an die deutsche Mailingliste ab, eventuell hab ich da Glück. Sonst heisst es jetzt wohl Floppy wieder einbauen und neu installieren, ich könnte wirklich ******.

Trotzdem danke und Grüsse,
Frank
 
Zuletzt bearbeitet:
Original geschrieben von Steinex
So ist es, in /var/db/pkg finde ich nur noch den einen Port. pkgdb -F bringt auch nix.

Dann heisst es jetzt wohl Floppy wieder einbauen und neu installieren, ich könnte wirklich ******.

Trotzdem danke und Grüsse,
Frank

Auch ohne das Forum abwerten zu wollen ist wahrscheinlich questions@freebsd.org eine bessere Anlaufstelle...

Gruß
buebo
 
Warum neu installieren? Re-installiere alle ports, von denen du weisst, du hattest sie installiert. Las ein find ueber /usr/local/ laufen, welches alle _aelteren_ Dateien ausgibt. Sobald du eine der alten Dateiene als 'zu port X gehoerig' erkennst, laesst du den Port nachinstallieren und startest find erneut.

Wenn du dir ein riesen Skript dazu bastelst, welches alle pkg-plist in /usr/ports nach dem Dateinamen durchsucht, dann kannst du das auch komplett automatisieren. Bloed ist nur, dass die Menge von Dateinamen in den pkg-plists nicht disjunkt sind. Manuell waere das Ganze wohl weniger fehlertraechtig.

PS: Und das mit den Backups hast du ja jetzt gelernt :)
 
Original geschrieben von MrFixit
Warum neu installieren? Re-installiere alle ports, von denen du weisst, du hattest sie installiert. Las ein find ueber /usr/local/ laufen, welches alle _aelteren_ Dateien ausgibt. Sobald du eine der alten Dateiene als 'zu port X gehoerig' erkennst, laesst du den Port nachinstallieren und startest find erneut.

Wenn du dir ein riesen Skript dazu bastelst, welches alle pkg-plist in /usr/ports nach dem Dateinamen durchsucht, dann kannst du das auch komplett automatisieren. Bloed ist nur, dass die Menge von Dateinamen in den pkg-plists nicht disjunkt sind. Manuell waere das Ganze wohl weniger fehlertraechtig.

PS: Und das mit den Backups hast du ja jetzt gelernt :)

Wie gesagt, die Lösung die Ports einfach wieder nachzuinstallieren finde ich extrem unsauber. Die Chance das ich einige Ports ganz vergesse (das geht los bei denen, die FreeBSD standardmässig installiert) ist nicht sehr gering. Bei einem portupgrade -a bleibt dann immer das schlechte Gefühl eine Ports nicht geupdated zu haben, sodass Teile des System vor sich hin rotten.

Verstehst du was ich meine?

Trotzdem dank und Grüsse,
Frank
 
Nein, verstehe ich nicht. Du vergisst ja keine Ports, da du ja mittels find die Zeiten der einzelnen Dateien ueberpruefst.
 
oh oh, das problem hatte ich auch mal.
dat is so als ob unter windows die registry plötzlich weg is.
weg is weg is weg. leider.
nur anstatt windows neu zu installieren, musste ich "nur" die programme nachinsten. das war noch halbwegs zu verkraften, da ja
das system nutzbar bleibt.
 
Zurück
Oben