[Gelöst]Wie entferne ich meinen doppelten Banshee ?

Alles rund um die Installation Eures Linuxsystems, sowie die Updatefunktionen des Systems und das Paketmanagement

Moderator: Moderatoren

Antworten
Benutzeravatar
gm2601
Advanced Hacker
Advanced Hacker
Beiträge: 818
Registriert: 4. Dez 2005, 11:53

[Gelöst]Wie entferne ich meinen doppelten Banshee ?

Beitrag von gm2601 » 19. Sep 2006, 17:32

Auf Empfehlung im Chat habe ich mir (mit Mühen, aber erfolgreich :D ) smart installiert und suche seither nach einer Lösung meine 2 Versionen von banshee loszuwerden.

Code: Alles auswählen

pm -qa | grep  banshee
banshee-0.10.9-21
banshee-engine-gst-0.10.9-21
banshee-engine-gst-0.10.3-2
smart und rpm bringen Fehlermeldungen

Code: Alles auswählen

error: %postun(banshee-engine-gst-0.10.3-2.i586) scriptlet failed, exit status 127

rpm -e banshee-engine-gst-0.10.3-2
warning: waiting for exclusive lock on /var/lib/rpm/Packages
Hab den rpm auch schon erfolglos im "init 2" versucht.
Welcher Holzhammer führt zum Erfolg?
Zuletzt geändert von gm2601 am 19. Sep 2006, 19:28, insgesamt 1-mal geändert.
Viele Grüße
gm2601
:wink: Die Mehrheit der Menschheit versteht von Linux noch weniger als ich :wink:

Werbung:
traffic
Guru
Guru
Beiträge: 2750
Registriert: 13. Feb 2005, 05:50

Beitrag von traffic » 19. Sep 2006, 18:02

Zuallererst bitte mal sämtliche Programme beenden, die noch auf die RPM-Datenbank zugreifen (rpm, smart, YaST...).

Danach:

Code: Alles auswählen

rpm -e banshee-engine-gst-0.10.3-2 --noscripts
"--noscripts" ist das Entscheidende.
openSUSE Factory - GNOME 2.32.1

Benutzeravatar
gm2601
Advanced Hacker
Advanced Hacker
Beiträge: 818
Registriert: 4. Dez 2005, 11:53

Beitrag von gm2601 » 19. Sep 2006, 18:32

Wer sagt's denn!
Als ich neulich "den Chat" mit "Hallo Guru's" begrüßte, gab's ein paar Skeptiker, dabei ist es doch SOOOO einfach bei mir Guru zu sein.
Danke!
Um unverschämt zu sein noch die Frage:Kann man sowas -bei Bedarf- auch dem "Smart" beibringen UND kannst Du Dich etwas über die Funktion solcher scripts auslassen?
Viele Grüße
gm2601
:wink: Die Mehrheit der Menschheit versteht von Linux noch weniger als ich :wink:

traffic
Guru
Guru
Beiträge: 2750
Registriert: 13. Feb 2005, 05:50

Beitrag von traffic » 19. Sep 2006, 19:02

Ja, man kann diese Option auch über smart verwenden. Zum Beispiel so:

Code: Alles auswählen

smart remove <Paket> -o rpm-noscripts=True
Damit werden die Skripte bei dieser einen Transaktion ignoriert, ohne die Option dauerhaft zu setzen. Die Option dauerhaft zu setzen, ist nicht empfehlenswert, weil diese Skripte sehr wichtig sein können.

Mit den Skripten hat es folgendes auf sich: Das sind Befehle, die bei Transaktionen vor oder nach dem Entpacken der Pakete ins Dateisystem ausgeführt werden. Bei diesem Paket hier geht es um den gstreamer-Cache: gstreamer ist ein Plugin-Framework, die Plugins werden mit einem Cache verwaltet, der nach dem Hinzufügen oder Entfernen eines Plugins neu aufgebaut werden muss, sonst werden die Plugins nicht erkannt.

Leider haben die gstreamer-Entwickler sich entschieden, die Handhabung des Cache zu ändern. Den Befehl, der den Neuaufbau des Cache anstößt, gibt es nicht mehr, stattdessen wird der Cache bei jeder Benutzung eines gstreamer-basierten Programms automatisch neu aufgebaut.

Deswegen schlägt das %post-Installations-Skript Deines Pakets fehl, weil es einen Befehl benutzt, den es nicht mehr gibt, was niemand vorhergesehen hat. In diesem Fall ist die Option "--noscripts" genau richtig, weil das Skript zu nichts mehr gut ist. Durch diese Option wird das fehlschlagende Skript übersprungen.
openSUSE Factory - GNOME 2.32.1

Benutzeravatar
gm2601
Advanced Hacker
Advanced Hacker
Beiträge: 818
Registriert: 4. Dez 2005, 11:53

Beitrag von gm2601 » 19. Sep 2006, 19:28

Hi traffic,

danke für Deine Ausführungen... zumindest habe ich verstanden, wie man smart bei Bedarf das beibringt und, daß man das auch nur bei Bedarf einsetzen soll. Nun werde ich mich zu Wiki begeben um die Begriffe: gstreamer, Plugin-Framework, %post-Installations-Skript ein wenig zu erhellen, wobei ich beim letzten bereits einen Anfangsverdacht habe :) Es ist für die Lösung meines Problems auch nicht wichtig, daß Du mir die Begriffe auch noch erklärst, da Deine Zeit für punktgenaue Antworten an User meines Kalibers besser genutzt ist. :wink:
Viele Grüße
gm2601
:wink: Die Mehrheit der Menschheit versteht von Linux noch weniger als ich :wink:

jengelh
Guru
Guru
Beiträge: 4039
Registriert: 20. Nov 2004, 17:42
Kontaktdaten:

Beitrag von jengelh » 19. Sep 2006, 20:46

Das Problem mit mehrfachen Einträgen hatte ich schon öfters. Um das zu bereinigen, muss man ein älteres oder neueres Paket einspielen, aber ohne dabei --force zu verwenden. Dann wieder das gewünschte einspielen.
Umständlich, aber welcher Honk hat rpm so gebaut, dass man überhaupt zwei gleiche Versionen installieren kann... *grübel*

traffic
Guru
Guru
Beiträge: 2750
Registriert: 13. Feb 2005, 05:50

Beitrag von traffic » 19. Sep 2006, 21:30

jengelh hat geschrieben:Das Problem mit mehrfachen Einträgen hatte ich schon öfters. Um das zu bereinigen, muss man ein älteres oder neueres Paket einspielen, aber ohne dabei --force zu verwenden. Dann wieder das gewünschte einspielen.
Warum nicht einfach das nicht mehr benötigte Release deinstallieren?

Probleme gibt es damit nur, wenn die Pakete überlappende Dateien enthalten und in der verkehrten Reihenfolge installiert wurden (z.B. wenn man das neue Release behalten will, das ältere aber nach dem neueren installiert wurde).
jengelh hat geschrieben:Umständlich, aber welcher Honk hat rpm so gebaut, dass man überhaupt zwei gleiche Versionen installieren kann... *grübel*
Die Releases sind ja nicht gleich.

Zwei völlig gleiche (d.h. im Hinblick auf %{NAME}, %{VERSION}, %{RELEASE} und %{ARCH} gleiche) Pakete können nicht gleichzeitig installiert sein. So schlau ist rpm dann schon, aber wenn mindestens einer der vier Tags unterschiedlich ist, lässt rpm die Parallelinstallation zu.

Die doppelt installierten Pakete können auf unterschiedlichem Wege zustandekommen, z.B. durch eine abgebrochene Transaktion, weil rpm immer zuerst das neue Paket installiert und danach erst das alte entfernt. Bricht die Transaktion mittendrin ab, dann bleiben beide Datenbankeinträge stehen.

In diesem Fall hier ist das defekte %postun-Skript für den Doppeleintrag verantwortlich.
openSUSE Factory - GNOME 2.32.1

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast