Wenn apt oder dpkg mit einer Fehlermeldung abbricht, steckt die Paketverwaltung meist in einem halben Zustand fest – etwa nach einem unterbrochenen Update. Der zuverlässigste erste Griff: sudo dpkg --configure -a, danach sudo apt update und sudo apt --fix-broken install. Diese drei Befehle lösen die große Mehrheit aller Debian-Paketfehler, ohne dass du etwas neu installieren musst.
Welcher Paketfehler liegt vor? (Diagnose)
„Debian Paketfehler“ ist ein Sammelbegriff. Die Reparatur hängt davon ab, was in der letzten Zeile der Ausgabe steht. Ein Fachinformatiker-Reflex hilft hier: nicht raten, sondern die Fehlermeldung lesen. Diese fünf Bilder decken fast alle Fälle ab:
- „dpkg was interrupted“ – ein Update wurde abgebrochen (Reboot, geschlossenes Terminal). Pakete hängen halb konfiguriert.
- „unmet dependencies“ / „You have held broken packages“ – Abhängigkeiten passen nicht zusammen, oft nach manuell installierten
.deb-Dateien. - „Could not get lock /var/lib/dpkg/lock-frontend“ – ein anderer Prozess nutzt apt gerade.
- „NO_PUBKEY“ / „The following signatures couldn’t be verified“ – der GPG-Schlüssel einer Paketquelle fehlt oder ist veraltet.
- „E: Unable to locate package“ – das Paket existiert in deinen Quellen nicht (Tippfehler oder fehlendes Repository).
Eine schnelle Statusprüfung vor jedem Eingriff: sudo apt-get check meldet, ob überhaupt kaputte Abhängigkeiten vorliegen.
Die Standard-Reparatur Schritt für Schritt
Diese Reihenfolge ist die universelle erste Hilfe und greift bei den meisten apt/dpkg-Problemen. Bei tiefergehenden Eingriffen gilt: vorher ein Backup wichtiger Konfigurationen anlegen.
- Halb konfigurierte Pakete abschließen:
sudo dpkg --configure -a. Das zwingt dpkg, unterbrochene Konfigurationen erneut durchzulaufen – der häufigste Einzelfix. - Paketlisten aktualisieren:
sudo apt update. So kennt apt wieder die aktuellen Versionen und Quellen. - Abhängigkeiten reparieren:
sudo apt --fix-broken install(kurzapt -f install). apt ergänzt fehlende Pakete oder schlägt das Entfernen der blockierenden vor. - System sauber durchziehen:
sudo apt full-upgradebringt zurückgehaltene Pakete auf Stand, auch wenn dabei welche entfernt werden müssen. - Aufräumen:
sudo apt autoremoveentfernt verwaiste Abhängigkeiten, die kein Paket mehr braucht.
Wichtig: Wenn ein Schritt erneut abbricht, lies die genannte Datei oder das genannte Paket aus der Meldung – dort steckt die eigentliche Ursache. Blind weitermachen verschlimmert den Zustand nur.
Warum schlägt „unmet dependencies“ immer wieder fehl?
Wenn apt --fix-broken install die Sache nicht löst, hängt meist ein einzelnes Paket quer – oft ein per dpkg -i von Hand installiertes .deb, das eine Abhängigkeit erwartet, die es in den Quellen nicht gibt.
- Den Verursacher gezielt entfernen:
sudo apt remove --purge PAKETNAME(mit--purgeverschwinden auch die Konfigurationsdateien). - Zurückgehaltene Pakete sichtbar machen:
sudo apt-mark showhold. Steht etwas auf „hold“, blockiert es Upgrades – freigeben mitsudo apt-mark unhold PAKETNAME. - Vor größeren Aktionen testen, was apt vorhat:
sudo apt full-upgrade --dry-runzeigt die geplanten Änderungen, ohne etwas anzufassen.
Goldene Regel für Debian „Stable“: nicht Repositories verschiedener Versionen (etwa Stable und Testing) mischen. Genau dieses „FrankenDebian“ erzeugt die hartnäckigsten Abhängigkeitskonflikte.
„Could not get lock“ – apt ist blockiert
Die Meldung Could not get lock /var/lib/dpkg/lock-frontend bedeutet: ein anderer Prozess nutzt die Paketverwaltung gerade. Meist ist das der automatische Hintergrunddienst unattended-upgrades oder ein noch offenes Software-Center.
Der richtige Weg ist warten, bis der andere Vorgang fertig ist. Welcher Prozess es ist, zeigt sudo lsof /var/lib/dpkg/lock-frontend. Erst wenn dort sicher kein apt-Prozess mehr läuft, darfst du die Lock-Dateien entfernen – sonst riskierst du eine beschädigte Paketdatenbank. Lock-Dateien voreilig zu löschen ist der häufigste Weg, sich die Installation endgültig zu zerschießen.
GPG-Fehler: „NO_PUBKEY“ und Signaturwarnungen unter Debian 13
Seit Debian 13 „Trixie“ (stabil seit August 2025) ist apt strenger geworden. Repositories, die noch alte SHA-1-Signaturen nutzen, lösen Warnungen aus – ab Februar 2026 werden solche Signaturen vollständig abgelehnt. Die Meldung NO_PUBKEY heißt schlicht: der öffentliche Schlüssel der Quelle fehlt.
Der moderne, sichere Weg speichert jeden Schlüssel als eigene Datei unter /etc/apt/keyrings/ und verknüpft ihn über das Feld Signed-By direkt mit seiner Quelle. Das löst das veraltete apt-key ab, das in aktuellen Debian-Versionen entfernt wurde.
- Verzeichnis anlegen:
sudo install -m 0755 -d /etc/apt/keyrings. - Den vom Anbieter bereitgestellten Schlüssel dort als
.gpg– oder.asc-Datei ablegen (Pfad steht in der Anleitung des jeweiligen Repositories). - In der Quelle das Feld
Signed-By: /etc/apt/keyrings/NAME.gpgauf genau diese Datei zeigen lassen. - Am einfachsten: das offizielle Setup-Skript des Anbieters erneut ausführen – es hinterlegt den rotierten Schlüssel automatisch. Danach
sudo apt update.
„Unable to locate package“ – das Paket existiert nicht
Diese Meldung ist meist kein Defekt, sondern ein fehlendes Puzzleteil. Prüfe der Reihe nach:
- Tippfehler im Paketnamen? Suche mit
apt search BEGRIFFnach dem echten Namen. - Paketlisten veraltet? Erst
sudo apt updateausführen. - Quelle fehlt? Manche Software liegt in den Bereichen
contrib,non-freeodernon-free-firmware, die in der Quellenkonfiguration aktiviert sein müssen.
Unter Trixie liegen die Paketquellen übrigens zunehmend im neuen deb822-Format als .sources-Dateien unter /etc/apt/sources.list.d/ – übersichtlicher als die alte einzeilige sources.list.
Hintergrund: apt, dpkg und warum das Problem entsteht
Wer den Unterschied zwischen den beiden Werkzeugen versteht, repariert schneller. dpkg ist das untere Werkzeug: es installiert eine konkrete .deb-Datei, kümmert sich aber nicht um Abhängigkeiten. apt liegt eine Ebene darüber, löst Abhängigkeiten auf und holt fehlende Pakete aus den Quellen.
Die meisten Paketfehler entstehen, wenn dpkg mitten in einer Installation gestoppt wird – durch einen erzwungenen Reboot, ein geschlossenes Terminal oder volle Festplatte. Dann sind Pakete „halb konfiguriert“, und apt verweigert weitere Aktionen, bis dieser Zustand bereinigt ist. Genau deshalb ist dpkg --configure -a so oft die Rettung: es nimmt den abgebrochenen Vorgang wieder auf, statt ihn zu übergehen.
Häufige Fragen
Was ist der schnellste Fix bei einem Debian Paketfehler?
In den meisten Fällen: sudo dpkg –configure -a, danach sudo apt update und sudo apt –fix-broken install. Das schließt unterbrochene Installationen ab und repariert kaputte Abhängigkeiten, ohne etwas neu zu installieren.
Was bedeutet „dpkg was interrupted“?
Ein Paket-Vorgang wurde abgebrochen, etwa durch einen Reboot oder ein geschlossenes Terminal. Pakete hängen halb konfiguriert. Behoben wird das mit sudo dpkg –configure -a.
Wie behebe ich den „Could not get lock“-Fehler?
Ein anderer Prozess nutzt apt gerade, oft unattended-upgrades. Warte, bis er fertig ist. Welcher Prozess es ist, zeigt sudo lsof /var/lib/dpkg/lock-frontend. Lock-Dateien nie voreilig löschen.
Was tun bei einem NO_PUBKEY-Fehler unter Debian 13?
Der GPG-Schlüssel der Paketquelle fehlt. Lege ihn unter /etc/apt/keyrings ab und verweise mit dem Feld Signed-By darauf, oder führe das Setup-Skript des Anbieters erneut aus. apt-key ist veraltet und entfernt.
Warum erscheint „Unable to locate package“?
Das Paket existiert in deinen Quellen nicht. Prüfe auf Tippfehler mit apt search, führe sudo apt update aus und stelle sicher, dass nötige Bereiche wie contrib oder non-free aktiviert sind.




