• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[done] Smart Speicherzugriffsfehler

OmasEnkel

Hacker
Moin,
nun dachte ich ja, smart wäre relativ einfach... Aber nach einer Suse 10.1- Neuinstallation gibt es doch Probleme:

Ich habe nach der Installation nicht mehr die Möglichkeit, Software per Yast oder smart zu updaten. Bei smart kommt die Meldung "Speicherzugriffsfehler" oder
Code:
Änderungen anwenden? (J/n) : j

Übermittle Transaktion ...
error: can't create transaction lock on /var/lib/rpm/__db.000

Traceback (most recent call last):
  File "/usr/bin/smart", line 194, in ?
    main(sys.argv[1:])
  File "/usr/bin/smart", line 167, in main
    exitcode = iface.run(opts.command, opts.argv)
  File "/usr/lib/python2.4/site-packages/smart/interface.py", line 53, in run
    result = _command.main(self._ctrl, opts)
  File "/usr/lib/python2.4/site-packages/smart/commands/upgrade.py", line 182, i                            n main
    ctrl.commitTransaction(trans, confirm=confirm)
  File "/usr/lib/python2.4/site-packages/smart/control.py", line 464, in commitT                            ransaction
    return self.commitChangeSet(trans.getChangeSet(), caching, confirm)
  File "/usr/lib/python2.4/site-packages/smart/control.py", line 525, in commitC                            hangeSet
    os.unlink(path)
OSError: [Errno 13] Permission denied: '/var/lib/smart/packages/koffice-wordproc                            essing-1.5.2-6.1.i586.rpm'
Daraufhin habe ich versucht, die rpm- Datenbank neu zu schreiben und
Code:
rpm --rebuilddb
ausgeführt. Dies schlägt allerdings fehl mit der Meldung
Code:
error: can't create transaction lock on /var/lib/rpm/__db.000
Was ich hier machen soll/kann, weis ich leider nicht. Als root respective su angemeldet bin ich.

Nun dachte ich mir, ich könnte die nötigen Updates ja auch per Yast installieren, allerdings funktioniert das auch nur bedingt. Einige Updates wurden installiert, etliche fehlen noch (unter anderem Kernel- Updates etc...). Yast versucht ein Java- Update, scheitert allerdings daran. Die Fehlermeldung, die kommt, lautet da ganz lapidar "Die Installation des Pakets ist fehlgeschlagen. "
Die Yast- Installationsquelle ist ftp.gwdg.de, eingerichtet als http- Quelle. Verzeichnis ist
pub/linux/suse/ftp.suse.com/suse/update/10.1, die Quelle ist an erster Stelle, sie ist aktiv, genauso wie die Aktualisierung.

Wie komme ich nun an die Updates? Braucht Ihr mehr Angaben? Falls ja, sagt mir am besten gleich, woher ich die bekomme...

Danke schomma...
 
Durcheinandergeratene Berechtigungen? Dateisystemkorruption?

Probier mal (als superuser, versteht sich):
Code:
touch /var/lib/smart/packages/koffice-wordprocessing-1.5.2-6.1.i586.rpm
touch /var/lib/rpm/__db.000
Außerdem die Ausgabe von:
Code:
ls -ld /var
ls -ld /var/lib
ls -ld /var/lib/smart
ls -ld /var/lib/smart/packages
ls -l /var/lib/smart/packages/*
ls -ld /var/lib/rpm
ls -l /var/lib/rpm/*
 
OP
O

OmasEnkel

Hacker
Ich glaube übrigens, dass ich vergessen habe zu erwähnen, dass es sich um eine Neuinstallation handelt. Das home- Verzeichnis wurde bei der Installation vererbt.

Die Ausgaben:
Ich habe
Code:
touch /var/lib/smart/packages/koffice-wordprocessing-1.5.2-6.1.i586.rpm 
touch /var/lib/rpm/__db.000
ausgeführt und das smart Upgrade nochmal gestartet. Nach 22 Prozent kam der gleiche Fehler wieder.

Ausserdem das hier:

Code:
MJL-Machine:/home/MJL # ls -ld /var
drwxr-xr-x 14 root root 360 2006-08-27 16:55 /var
MJL-Machine:/home/MJL # ls -ld /var/lib
drwxr-xr-x 55 root root 1416 2006-08-30 02:22 /var/lib
MJL-Machine:/home/MJL # ls -ld /var/lib/smart
drwxr-xr-x 4 root root 176 2006-08-31 00:03 /var/lib/smart
MJL-Machine:/home/MJL # ls -ld /var/lib/smart/packages
drwxr-xr-x 2 root root 27960 2006-08-31 00:08 /var/lib/smart/packages
und http://www.phpfi.com/147277

Hilft das?

An den Mod: Ich poste das gleich um, ich suche nur noch den Link!
 
Gut, Du hast die "touch"-Befehle ausgeführt. OK. Und? Ergebnis? Konnten die Dateien erzeugt werden oder nicht? Irgendwelche Fehlermeldungen wegen fehlender Berechtigungen?

Kann es zufällig sein, dass das Dateisystem randvoll ist? Überprüf das mal mittels "df".
 
OP
O

OmasEnkel

Hacker
Schau hier:
Code:
MJL-Machine:/home/MJL # touch /var/lib/smart/packages/koffice-wordprocessing-1.5.2-6.1.i586.rpm
MJL-Machine:/home/MJL # touch /var/lib/rpm/__db.000
MJL-Machine:/home/MJL # df
Dateisystem          1K-Blöcke   Benutzt Verfügbar Ben% Eingehängt auf
/dev/hda5             10490040   8700320   1789720  83% /
udev                    517652       176    517476   1% /dev
/dev/hda6             59767960   9874324  49893636  17% /home
/dev/hda1             31455236  25101168   6354068  80% /windows/C
/dev/hda2             52415264  46942944   5472320  90% /windows/D
Auf die touch-Befehle kommt garnix... keine Ausgabe, keine Fehlermeldung. Und dass die Festplatten gefährlich voll wären, kann ich mir nicht vorstellen... Oder?
 
OP
O

OmasEnkel

Hacker
Also nach Tagen bei Google etc finde ich einfach keine Lösung. Hier scheint auch keiner zu sein, der da helfen kann. Wenn ich jetzt smart neu einrichten will, wo muss ich denn dann nachschauen, damit ich alle Dateien löschen kann, die von smart erzeugt werden?

Mein Gedanke dabei ist, alles zu löschen, was von Smart kommt, die Channelliste neu einzulesen und danach nochmal das Update zu versuchen. Aber wo genau muss ich da suchen? Reicht es, wenn ich

Smart in /etc
smart in /usr/bin
smart in /usr/lib
smart in /usr/lib/python2.4/site-packages/
smart in /usr/share/doc/packages
smart in /var/lib

lösche? Das sind die Suchergebnisse nach dem Stichwort "smart". Oder lösche ich damit irgendwelche für das System wichtige Dinge?
Ich weis, dass das eine Radikallösung ist, aber was sonst könnte ich tun???
 

oc2pus

Ultimate Guru
Code:
rpm -ql smart smart-gui
listet dir alle Dateien auf die smart installiert,
die "Bewegungsdaten" stehen bei einer default-installation in /var/lib/smart
 
Oben