Anleitung: Den Fehler „Unable to correct problems, you have held broken packages“ unter Ubuntu 20.04 LTS beheben

Melden

Die Fehlermeldung „E: Unable to correct problems, you have held broken packages“ (auf Deutsch oft: „Probleme können nicht korrigiert werden, Sie haben zurückgehaltene defekte Pakete“) tritt auf, wenn der Paketmanager APT eine Software nicht installieren kann, weil Abhängigkeiten miteinander in Konflikt stehen oder bestimmte Pakete blockiert sind.

Dieses Tutorial führt Sie Schritt für Schritt durch die effektivsten Methoden, um diesen Fehler unter Ubuntu 20.04 LTS zu beheben.


Methode 1: Paketlisten bereinigen und Abhängigkeiten reparieren

Oftmals wird der Fehler durch veraltete Paketlisten oder unvollständig installierte Pakete verursacht.

  1. Öffnen Sie das Terminal (Strg + Alt + T).
  2. Bereinigen Sie den lokalen Paket-Cache:
    sudo apt clean
    sudo apt autoclean
  3. Konfigurieren Sie eventuell unfertige Installationen neu:
    sudo dpkg --configure -a
  4. Erzwingen Sie die Reparatur defekter Abhängigkeiten:
    sudo apt --fix-broken install
  5. Aktualisieren Sie Ihre Paketquellen:
    sudo apt update

Versuchen Sie nun erneut, Ihr gewünschtes Paket zu installieren. Falls der Fehler weiterhin besteht, fahren Sie mit Methode 2 fort.


Methode 2: Zurückgehaltene Pakete finden und freigeben

Die Fehlermeldung deutet oft wörtlich darauf hin, dass Pakete auf den Status „Hold“ (Zurückhalten) gesetzt wurden. Diese müssen freigegeben werden.

  1. Prüfen, ob Pakete zurückgehalten werden:

    apt-mark showhold
  2. Wenn Ihnen hier Pakete aufgelistet werden, heben Sie die Blockierung auf mit:

    sudo apt-mark unhold <paketname>

    (Ersetzen Sie <paketname> durch den tatsächlichen Namen aus der Liste. Wenn mehrere vorhanden sind, führen Sie den Befehl für jedes Paket aus.)

  3. Versuchen Sie anschließend ein System-Upgrade:

    sudo apt update && sudo apt upgrade

Methode 3: Die Lösung über „Aptitude“ (Empfohlen)

Das Standard-Tool apt gibt bei Konflikten schnell auf. Das Tool Aptitude ist intelligenter und schlägt alternative Lösungswege vor (wie z. B. das Herabstufen/Downgraden anderer Pakete, um den Konflikt zu lösen).

  1. Installieren Sie Aptitude:
    sudo apt install aptitude
  2. Versuchen Sie, das problematische Paket über Aptitude zu installieren:
    sudo aptitude install <paketname>
  3. Aufmerksam lesen:
    • Aptitude wird Ihnen einen ersten Lösungsvorschlag machen. Meist lautet dieser: „Paket nicht installieren“.
    • Lehnen Sie diesen ersten Vorschlag mit n (für No) ab.
    • Aptitude errechnet nun einen zweiten Vorschlag (oft: andere in Konflikt stehende Pakete downgraden oder entfernen).
    • Wenn dieser Vorschlag sinnvoll erscheint, bestätigen Sie ihn mit y (für Yes).

Methode 4: Problematische PPAs oder Drittanbieter-Quellen entfernen

Der Fehler entsteht sehr häufig durch inkompatible Drittanbieter-Repositories (PPAs), die Paketversionen bereitstellen, die nicht zu Ubuntu 20.04 LTS passen.

  1. Installieren Sie das Tool ppa-purge:

    sudo apt install ppa-purge
  2. Deaktivieren Sie das zuletzt hinzugefügte oder verdächtige PPA und setzen Sie die Pakete auf die offiziellen Ubuntu-Versionen zurück:

    sudo ppa-purge ppa:<name-des-ppas>/ppa
  3. Falls Sie das Repository manuell hinzugefügt haben, können Sie die entsprechende Datei unter /etc/apt/sources.list.d/ löschen oder die Zeile in der Datei /etc/apt/sources.list mit einem # auskommentieren.

  4. Führen Sie danach wieder ein Update durch:

    sudo apt update

Zusammenfassung

In den meisten Fällen lässt sich das Problem am schnellsten mit Methode 3 (Aptitude) lösen, da das Programm dem Benutzer interaktiv die Wahl lässt, inkompatible Abhängigkeiten aufzulösen. Liegt es an blockierten Paketen, führt Methode 2 (apt-mark unhold) sofort zum Erfolg.

0