Skip to Content

  • apt install meldet „Abhängigkeit nicht erfüllt“
  • dpkg ist unterbrochen und kann die Installation nicht fortsetzen
  • Die Meldung „gebrochene Pakete zurückgehalten“ wird angezeigt
  • Paketstatus ist „halbinstalliert“ oder „halbkonfiguriert“
Note

Die meisten Paketprobleme können mit den ersten drei Schritten (dpkg --configure -a, apt --fix-broken install, apt update && apt upgrade) gelöst werden. Bitte probieren Sie sie der Reihe nach aus und nutzen Sie nicht überstürzt fortgeschrittene Reparaturmethoden.

Standard-Reparaturverfahren

Führen Sie die folgenden Schritte der Reihe nach aus. Die ersten Schritte lösen das Problem normalerweise.

Schritt 1: Unterbrochenes Dpkg beheben

sudo dpkg --configure -a

Schritt 2: Abhängigkeiten beheben

sudo apt --fix-broken install

Schritt 3: Aktualisieren und bereinigen

sudo apt update sudo apt upgrade sudo apt autoremove sudo apt autoclean

# View problematic packages dpkg -l | grep -E "^..[^i ]" # Force reinstall a package sudo apt install --reinstall PACKAGE_NAME # Force remove a broken package sudo dpkg --remove --force-remove-reinstreq PACKAGE_NAME

# Delete all downloaded package cache sudo apt clean # Delete only outdated packages sudo apt autoclean # Manual cleanup sudo rm /var/cache/apt/archives/*.deb sudo rm /var/cache/apt/archives/partial/*.deb

Wenn Sie die Meldung erhalten, dass das Administrationsverzeichnis nicht gesperrt werden kann:

# Check if other apt/dpkg processes are running ps aux | grep -E "apt|dpkg" # If you confirm no other processes are running, delete the lock files sudo rm /var/lib/dpkg/lock-frontend sudo rm /var/lib/dpkg/lock sudo rm /var/cache/apt/archives/lock sudo dpkg --configure -a

Erstellen Sie die dpkg-Datenbank neu

In extremen Fällen, in denen die dpkg-Datenbank beschädigt ist:

# Back up existing database sudo cp -r /var/lib/dpkg /var/lib/dpkg.backup # Restore the status file from the system's daily backup (status is dpkg's core database) ls -t /var/backups/dpkg.status.* # List available backup snapshots sudo cp /var/backups/dpkg.status.0 /var/lib/dpkg/status # .0 is newest; use an older snapshot if needed sudo dpkg --clear-avail sudo apt update

Fehlerbehebung bei Abhängigkeitskonflikten

Paketabhängigkeiten anzeigen

# View dependencies of a package apt depends PACKAGE_NAME # View which packages depend on a package apt rdepends PACKAGE_NAME # Simulate installation to see conflicts apt install -s PACKAGE_NAME

Konflikte durch PPAs

PPAs von Drittanbietern sind eine häufige Ursache für Abhängigkeitskonflikte:

# List added PPAs grep -rh "^deb " /etc/apt/sources.list.d/ | sort # Disable a problematic PPA sudo add-apt-repository --remove ppa:xxx/yyy # Downgrade PPA-installed packages to official versions sudo apt install ppa-purge sudo ppa-purge ppa:xxx/yyy

Versionskonflikte

# View held packages apt-mark showhold # Unhold a package sudo apt-mark unhold PACKAGE_NAME

Snap Paketprobleme

# View snap status snap list # Fix snap sudo snap refresh # Reinstall a problematic snap sudo snap remove PACKAGE_NAME sudo snap install PACKAGE_NAME

Letzter Ausweg

Wenn keine der oben genannten Methoden funktioniert, versuchen Sie Folgendes:

# Completely reinstall the package management system (use with caution) sudo apt install --reinstall dpkg apt # Or use aptitude for interactive conflict resolution sudo apt install aptitude sudo aptitude install PACKAGE_NAME # aptitude will offer multiple solutions to choose from

Präventionstipps

  1. Vermeiden Sie das Hinzufügen nicht vertrauenswürdiger PPAs von Drittanbietern
  2. Mischen Sie keine Softwarequellen aus verschiedenen Ubuntu-Versionen
  3. Führen Sie sudo apt update && sudo apt upgrade regelmäßig aus
  4. Verwenden Sie apt install -s, um die Installation zu simulieren und auf Konflikte zu prüfen
  5. Halten Sie die Systempaketversionen konsistent; Vermeiden Sie die manuelle Installation von .deb-Dateien, die Systempakete überschreiben