Ich hatte gerade beim Updaten von Gitlab das Problem, dass der Update Prozess folgenden Fehler geworfen hatte:

Sub-process /usr/bin/dpkg returned an error code (1)

Um den Fehler zu beheben gibt es folgende Möglichkeiten.

Meine Lösung (Gitlab)

For der Ausgabe des Fehlers stehen meistens noch etwaige Informationen um den Fehler eingrenzen zu können, in meinem Fall war (den genauen Wortlaut habe ich leider nicht mehr im Kopf) es, dass Gitlab erst auf die neue Majo Version (akt. 11.x) upgedatet werden darf, wenn die installierte Version auf dem letzten Stand (10.8.7) ist. Nach dem ich das ganze per apt-get installiert hatte, konnte ich das ganz einfach lösen, in dem ich das aktuelle *.dev Paket von der Gitlab Seite heruntergeladen hatte und per

sudo dpkg -i gitlab-ce_10.8.7-ce.0_amd64.deb

installiert habe. Anschließend war der Fehler behoben. Nichts desto trotz können noch andere Schritte durchgeführt werden um den Fehler lösen zu können

Paket Datenbank neu konfigurieren

In einigen Fällen reicht es, wenn die Paket Datenbank erneut konfiguriert wird. Das passiert mit folgendem Befehl

sudo dpkg --configure -a

Installation forsieren

Unter Umständen kann es auch reichen, den –force Parameter anzuhängen damit die Installation forsiert wird.

sudo apt-get install -f

Pakete die Probleme machen entfernen

Ich hatte auch schon den Fall, dass das entsprechende (problematische) Paket entfernt werden muss.

sudo apt-get remove <PAKETNAME>

Kleine Anmerkung am Rande: Mit dem Parameter remove wird das Paket entfernt, die Konfigurationsdateien bleiben erhalten. Um das Paket komplett entfernen zu können muss anstelle von remove, purge verwendet werden.

Post Info Dateien entfernen

So ziemlich jedes Paket enthält irgendwelche Info Dateien oder Skripte die vor bzw. nach der Installation aufgerufen werden. Es könnte das Problem lösen wenn diese entfernt werden, allerdings mit Vorsicht zu beachten, diese Dateien sind nicht ohne Grund vorhanden. Zu finden sind diese Dateien im Verzeichnis:

/var/lib/dpkg/info