Neulich hat mein Server nach einem apt-get update Probleme gehabt. Seitdem immer Meckermeldungen ala
Paket ist in einem sehr schlechten inkonsistenten Zustand - Sie sollten es erneut installieren, bevor Sie es zu entfernen versuchen.Leider ist das gut gebrüllt, Löwe. Denn das ist nicht so einfach: Weder apt-get remove netatalk noch apt-get install netatalk funktionierten.
Paketlisten werden gelesen... Fertig Abhängigkeitsbaum wird aufgebaut Lese Status-Informationen ein... Fertig [.... ....] dpkg: Fehler beim Bearbeiten von netatalk (--remove): Paket ist in einem sehr schlechten inkonsistenten Zustand - Sie sollten es erneut installieren, bevor Sie es zu entfernen versuchen. (Lese Datenbank ... 103730 Dateien und Verzeichnisse sind derzeit installiert.) [....] Verarbeite Trigger für man-db ... Fehler traten auf beim Bearbeiten von: netatalk E: Sub-process /usr/bin/dpkg returned an error code (1)
invoke-rc.d: initscript netatalk, action "stop" failed. dpkg: Warnung - altes pre-removal-Skript wurde mit Fehler-Status 1 beendet dpkg - probiere stattdessen Skript aus dem neuen Paket ... hostname: Unknown host invoke-rc.d: initscript netatalk, action "stop" failed. dpkg: Fehler beim Bearbeiten von /var/cache/apt/archives/netatalk_2.0.3-11+lenny 1_i386.deb (--unpack): Unterprozess neues pre-removal-Skript gab den Fehlerwert 1 zurück hostname: Unknown host invoke-rc.d: initscript netatalk, action "start" failed. dpkg: Fehler beim Aufräumen: Unterprozess post-installation script gab den Fehlerwert 1 zurück Fehler traten auf beim Bearbeiten von: /var/cache/apt/archives/netatalk_2.0.3-11+lenny1_i386.deb E: Sub-process /usr/bin/dpkg returned an error code (1)
Natürlich habe ich die üblichen Verdächtigen ausprobiert:
apt-get -f install
dpkg -i --force-all --no-triggers /var/cache/apt/archives/netatalk_2.0.3-11+lenny1_i386.deb
dpkg --remove --force-remove-reinstreq netatalk
dpkg -P --force-all netatalk
Nun blieb mir nur, das Script manuell zu bearbeiten, um den exit Status hart auf 0 zu setzen.
Doch da rief grad mein Kumpel Det vom mobbing-gegner an und hatte einen anderen Vorschlag.
Ich habe einfach in der Status Datei von dpkg mit nano /var/lib/dpkg/status das netatalk komplett gelöscht. war ja eh nicht installiert.
Dazu muß man nur den kompletten Block in der Status Datei finden und löschen, vielleicht macht man sich vorher eine Sicherheitskopie. Die Leerzeile zum nächsten Block muss natürlich beachtet werden.
Ein anschliessendes apt-get -f install hat bestätigt, das alles in Ordnung ist. Wie man sieht, findet man manchmal nicht die Lösung im www, sondern im privaten Netzwerk. Danke Detlev.