In der vollständigen Ausgabe von sudo apt update
oder sudo apt upgrade
oder sudo apt install -f
sollten Sie einige Nachrichten dpkg
darüber finden, was tatsächlich schief gelaufen ist.
Diese Zeilen beginnen mit, dpkg:
da dies der Name des Programms ist, das den Fehler zurückgibt. Die Ausgabezeilen unmittelbar vor oder nach diesen Zeilen sind häufig am hilfreichsten.
Einige Beispiele für die vielen möglichen Fehler, die Sie möglicherweise sehen:
Setting up install-info (6.4.90.dfsg.1-1build1) ...
/usr/sbin/update-info-dir: 3: /etc/environment: $: not found
dpkg: error processing package install-info (--configure):
subprocess installed post-installation script returned error exit status 127
Dies bedeutet, dass das Skript nach der Installation nicht ausgeführt werden konnte. Shells verwenden den Exit-Status 127, um "Befehl nicht gefunden" zu bedeuten. Daher wurde ein vom Post-Inst-Skript aufgerufener Befehl nicht gefunden. Die Zeilen vor der dpkg
Zeile geben einen Hinweis auf den Grund: Es stimmt etwas nicht mit der /etc/environment
Datei (die Umgebungsvariablen wie festlegen sollte PATH
).
start: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: Connection refused
No apport report written because the error message indicates its a followup error from a previous failure.
dpkg: error processing package runit (--configure):
subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of git-daemon-run:
git-daemon-run depends on runit; however:
Package runit is not configured yet.
Der obige Fehler wurde durch einen Fehler im runit
Paket verursacht, bei dem erwartet wurde, dass Upstart installiert ist, obwohl systemd als Standard-Init-System für Ubuntu erfolgreich war. Die Nachricht failed to connect to Upstart
ist also der beste Hinweis, aber wir benötigen den Kontext, um herauszufinden, wie dies das Problem der Paketverwaltung verursacht.
Unpacking libjline-java (from .../libjline-java_1.0-1_all.deb) ...
dpkg: error processing /var/cache/apt/archives/libjline-java_1.0-1_all.deb (--unpack):
trying to overwrite '/usr/share/java/jline.jar', which is also in package scala 2.9.2-400
Dies bedeutet, dass es Paketkonflikte gibt, die möglicherweise durch eine Mischung aus Repository-Versionen oder Repositorys von Drittanbietern verursacht werden.
TL; DR
In jedem Fall, in dem der Fehler angezeigt wird Sub-process /usr/bin/dpkg returned an error code (1)
, müssen Sie oben nach Zeilen suchen, die mit dpkg:
und vor und nach den Zeilen beginnen , um nützliche Hinweise darauf zu erhalten, was schief gelaufen ist. Versuchen Sie, nach diesen spezifischen Fehlern zu suchen .
Wenn Sie hier oder auf einer anderen Support-Site eine Frage stellen, stellen Sie sicher, dass Sie den von Ihnen ausgeführten Befehl und die vollständige Ausgabe angeben, nicht nur die zusammenfassenden Fehlermeldungen.