(Gelöst) smart nach kill -15 nicht mehr zu starten

Status
Für weitere Antworten geschlossen.

Benno

Member
Heute habe ich ein ganz normales Update mit Smart gestartet und den KDE-Channel hinzugenommen. Smart blieb hängen, mit der Meldung, es könne die betreffenden Pakete nicht herunterladen. Weil es sich nicht auf normalem Wege schließen ließ, habe ich es mit
Code:
 kill -15
beendet. Seitdem kann ich smart --gui nur noch als normaler User starten (was natürlich wenig bringt) ein Start als root ergibt aber folgende Fehlermeldung:


Code:
 Schlafzimmer:/home/schlafzimmer # smart --gui
Traceback (most recent call last):
  File "/usr/bin/smart", line 194, in ?
    main(sys.argv[1:])
  File "/usr/bin/smart", line 165, in main
    initPlugins()
  File "/usr/lib/python2.4/site-packages/smart/__init__.py", line 161, in initPlugins
    __import__("smart.plugins."+entry[:-3])
  File "/usr/lib/python2.4/site-packages/smart/plugins/channelsync.py", line 200, in ?
    syncChannels(sysconf.get("channel-sync-dir", CHANNELSDIR))
  File "/usr/lib/python2.4/site-packages/smart/plugins/channelsync.py", line 50, in syncChannels
    descriptions = parseChannelsDescription(data)
  File "/usr/lib/python2.4/site-packages/smart/channel.py", line 278, in parseChannelsDescription
    key, value = line.split("=")
ValueError: too many values to unpack
Hm, so richtig schlau werde ich nicht draus, ich habe den Eindruck, dass irgendetwas mit dem Zwischenspeicher nicht stimmt, weil smart beim Herunterladen der Pakete abgestürzt ist. Habe dann noch versucht den KDE-Channel zu deaktivieren, die Meldung bleibt gleich. Gibt es eine Möglichkeit dies zu reparieren oder muss ich smart komplett neu installieren?

Gruß

Benno
 

Rain_Maker

Administrator
Teammitglied
AW: smart nach kill -15 nicht mehr zu starten

Datei /var/lib/smart/cache als root löschen.

Greetz,

RM
 

Benno

Member
AW: smart nach kill -15 nicht mehr zu starten

Cache gelöscht, Meldung bleibt leider die gleiche. Ich hab mal im Verzeichnis var/lib/smart/packages nachgeschaut. Wenn mich nicht alles täuscht, finde ich dort alle Pakete, die erneuert werden sollten.

Gruß

Benno
 

Rain_Maker

Administrator
Teammitglied
AW: smart nach kill -15 nicht mehr zu starten

Läuft denn smart noch in der Kommandozeile?

Code:
sudo smart upgrade --update
Greetz,

RM
 

Benno

Member
AW: smart nach kill -15 nicht mehr zu starten

Nein, sobald ich smart mit einer Kommandooption starten will kommt immer wieder obige Fehlermeldung. Es lässt sich nur noch die Version und und die Help-Option aufrufen.

Wie kann es kommen, dass ein Aufruf als normaler User möglich ist? Irgend eine Information, die root benutzt, muss beschädigt sein.

Gruß

Benno
 

Rain_Maker

Administrator
Teammitglied
AW: smart nach kill -15 nicht mehr zu starten

Unter Umständen hat es die rpm-Datenbank erwischt.

Versuche mal ein Paket von Hand mit rpm zu installieren.
Wenn dort auch Fehler auftauchen sollten, dann:

Code:
sudo rpm --rebuilddb
Greetz,

RM
 

Rain_Maker

Administrator
Teammitglied
AW: smart nach kill -15 nicht mehr zu starten

Dann ist die smart.config wahrscheinlich hinüber.

Verschiebe (sic!, löschen kann man die immer noch) die Dateien config und config.old in /var/lib/smart, lösche den cache wie im ersten Posting und dann auf ein Neues.

Dabei gehen dummerweise aber auch die Package Flags flöten, die Chanel werden IIRC neu abgefragt.

Konfigurationseinstellungen müssen neu gesetzt werden, z.B. gepinnte Pakete usw.

Tipp:

Alle paar Tage/Wochen die Dateien config und config.old sichern, dann hat man einen Rettungsanker ohne Verlust von Konfigurationseinstellungen.

Greetz,

RM
 

Benno

Member
AW: smart nach kill -15 nicht mehr zu starten

Der Fehler bleibt der gleiche (sorry). Nochmals: Es muss etwas sein, das nur den Benutzer root betrifft. Als normaler User kann ich smart starten, und es lädt dann auch den Zwischenspeicher, es kann ihn dann nur nicht wegen der eingeschränkten Schreibrechte sichern. Vielleicht sollte ich es einfach mal versuchen, das Verzeichnis var/lib/smart für die Gruppe users mit Schreibrechten freizugeben, smart als User starten, cache neu schreiben, und es dann als root wieder versuchen. Was denkst du?

Gruß

Benno
 

Rain_Maker

Administrator
Teammitglied
AW: smart nach kill -15 nicht mehr zu starten

Nö, das bringt zu 99% nix.

Du kannst aber die Pakete im Unterordner 'packages' versuchen zu löschen, vielleicht ist da ein Download hinüber. Außerdem in den Unterordner 'tmp' schauen und dort auch "klar Schiff" machen.

Im Verzeichnis /root gibt es nur eine Datei .smart_history, die kann man auch mal löschen/verschieben.

Geht denn noch so etwas wie
Code:
smart channel --show > /root/Channels.txt
Das unbedingt zuerst probieren.

Greetz,

RM
 

Benno

Member
AW: smart nach kill -15 nicht mehr zu starten

Die Datei .smart_history lässt sich nicht finden.
Code:
smart channel --show
läuft auch nicht als root, wohl aber als User.

Hab es mal mit der Veränderung der Schreibrechte versucht. smart ließ sich dann auch als User nicht mehr starten. Schreibrechte in den Originalzustand zurückversetzt, und im Read-Only-Modus läuft alles.

Gruß

Benno
 

Rain_Maker

Administrator
Teammitglied
AW: smart nach kill -15 nicht mehr zu starten

Sag ich doch, daß das nichts bringt.

Dann als User
Code:
smart channel --show > ~/Desktop/Channelliste.txt
Dann sind Deine aktuellen Channels gesichert. Danach als root Großreinemachen in /var/lib/smart und smart neu einrichten, schlimmstenfalls alles in den jeweiligen Unterordnern löschen.

Greetz,

RM
 

Benno

Member
AW: smart nach kill -15 nicht mehr zu starten

Alle Dateien aus /var/lib/smart verschoben, Channelliste gesichert. Fehlermeldung bleibt. Ich habe den Eindruck, dass smart "denkt", root hätte es in Benutzung.

Gruß

Benno
 

Rain_Maker

Administrator
Teammitglied
AW: smart nach kill -15 nicht mehr zu starten

Da würde man zuerst eine "lock"-Datei vermuten, aber ich habe keine in den "verdächtigen" Verzeichnissen gefunden.

Versuche mal mittels rpm mit Gewalt (--force) das smart-Paket der selben Version wieder ins System zu hämmern.

Die Fehlermeldungen beziehen sich auf Python-Module, die sich im smart RPM befinden, vielleicht hat es Dir bei dieser Killaktion eines der Python-Module zerlegt.

Greetz,

RM
 

Benno

Member
AW: smart nach kill -15 nicht mehr zu starten

Rain_Maker schrieb:
Die Fehlermeldungen beziehen sich auf Python-Module, die sich im smart RPM befinden, vielleicht hat es Dir bei dieser Killaktion eines der Python-Module zerlegt.
Genau das denke ich nicht, weil ein Start als User möglich ist.

Ich habe versucht smart reinzuhämmern, aber rpm hängt sich auf und muss dann gekillt werden. Ich fürchte, ich sollte smart einfach mittels yast deinstallieren, dann neu installieren und upgraden. Die Channelliste habe ich ja gesichert

Gruß

Benno
 

Rain_Maker

Administrator
Teammitglied
AW: smart nach kill -15 nicht mehr zu starten

Aha.

RPM "hängt sich auf"? So ganz ohne Fehlermeldung.

Läuft da noch ein anderer Prozeß, der auf die rpm-Datenbank zugreift?

Code:
ps aux|egrep 'smart|rpm|y2base|yast|rug'|grep -v grep
BTW:

Smart bricht bei einem Servertimeout von alleine ab, man muß nur ein wenig warten, aber das nur so am Rande.

Genau das denke ich nicht, weil ein Start als User möglich ist.
Gegenfrage:
Und wenn dieser potentiell kaputte Python-Prozess nur aufgerufen wird, wenn etwas geschrieben werden soll?

Dann gehts als User und als root nicht. Das auch nur nebenbei; es muß nicht sein, aber zumindest beweist Deine Schlußfolgerung gar nichts.

Greetz,

RM
 

Benno

Member
AW: smart nach kill -15 nicht mehr zu starten

Es läuft keiner der oben genannten Prozesse. Und natürlich, du hast recht, wenn einer dieser Prozesse nur dann aufgerufen wird, wenn geschrieben werden soll, gibt's natürlich keine Fehlermeldung im Read-Only-Modus.

RPM hängt sich übrigens nur dann auf, wenn ich smart händisch installieren will, mit anderen Packeten würde es gehen, aber da werden natürlich noch nicht aufgelöste Abhängigkeiten angemeckert.

Woran merkt das System eigentlich, dass ein bestimmter Benutzer ein Programm benutzt, d.h. wo wird dies markiert?

Gruß

Benno
 

Rain_Maker

Administrator
Teammitglied
AW: smart nach kill -15 nicht mehr zu starten

Nope, der nächste Trugschluß.

Wenn bei anderen Paketen eine nicht erfüllte Abhängigkeit gefunden wird, dann bricht RPM _VOR_ der eigentlichen Installation ab.

Also suche Dir irgendein andres Paket, welches Du schon auf dem System hast aus und versuche das mal drüberzubügeln (-Uvh --force). Wenn das geht, dann wirds knifflig, wenn das auch Probleme macht, dann die RPM-Datenbank neu aufbauen (siehe weiter unten).

Greetz,

RM
 

Benno

Member
RPM-Datenbank neu aufgebaut. RPM bleibt nun trotzdem einfach stehen ohne Meldung. Ich werden einfach mal den Rechner neu starten, auch wenn's meistens nicht nötig ist, um wirklich sicher zu sein, dass keine störenden Prozesse noch laufen.

Gruß

Benno

So, ich habe den Rechner neu gestartet und smart mittels rpm reingebügelt. Die Fehlermeldung bleibt. Vielleicht ist wirklich irgendwas mit den Pyton-Bibliotheken.

Gruß

Benno
 

Rain_Maker

Administrator
Teammitglied
AW: smart nach kill -15 nicht mehr zu starten

Also geht rpm auf einmal wieder?

Könnte man ja dazuschreiben, aber ist ja viel besser, wenn ich nachfragen darf, dazu bin ich ja schließlich da. Sowas wie Shellausgaben vermisse ich auch, denn ob der Fehler wirklich gleich geblieben ist, würde ich dann doch gerne auch selbst nachprüfen, wenn das hier schwarz auf weiß steht, dann hat man Gewissheit.

Welche Version von smart im Spiel ist (gehört ja eigentlich ins erste Posting) steht auch nirgends.

Und dann haben wir da noch den kleinen aber feinen Button "Ändern", den man dann verwenden sollte, wenn man etwas ergänzen möchte.

So, letzte Meldung von mir:

Dann schmeisse alles runter, was smart heisst, lösche alle Dateien in /var/lib/smart installiere alles, was zu smart gehört neu (inklusive der Abhängigen python-Pakete, siehe Dein erster Thread bin jetzt zu faul zum Suchen, was das alles war).

Ob das dann funktioniert, weiß ich nicht, aber Du könntest dann auch noch mit 'find" nach lock-Files suchen lassen (.lock).

Was da genau von Dir kaputt gemacht wurde weiß ich genausowenig, aber zumindest gehst Du wahrscheinlich ab sofort etwas vorsichtiger mit kill um.

Wenn Du ein Problem mit python vermutest, dann installiere das auch noch neu, kaputter als kaputt kannst Du es eh nicht mehr machen

Greetz,

RM
 
Status
Für weitere Antworten geschlossen.
Oben