Behebung des Fehlers „Paketdatei /var/lib/apt/lists kann nicht geparst werden“ in Ubuntu und anderen Linux-Distributionen

Ich habe in der Vergangenheit eine Reihe von Ubuntu-Update-Fehlern besprochen. Wenn Sie Ubuntu über die Befehlszeile aktualisieren, können einige “Fehler” auftreten.

Einige dieser „Fehler“ sind im Grunde integrierte Funktionen, um unberechtigte Änderungen an Ihrem System zu verhindern. Ich gehe in diesem kurzen Tutorial nicht auf diese Details ein.

In diesem kurzen Tipp zeige ich Ihnen, wie Sie den folgenden Fehler beheben können, der beim Aktualisieren Ihres Systems oder beim Installieren neuer Software auftreten kann:

Paketlisten lesen… Fehler!
E: Paketdatei /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_bionic_InRelease kann nicht geparst werden
E: Die Paketlisten oder Statusdatei konnten nicht geparst oder geöffnet werden.

Ein ähnlicher Fehler kann in Debian auftreten:

E: Paketdatei /var/lib/apt/extended_states kann nicht geparst werden (1)

Es besteht absolut kein Grund zur Panik, auch wenn es heißt:Die Paket-Cache-Datei ist beschädigt‘. Das lässt sich ganz einfach “reparieren”.

Behandlung des Fehlers „Paketdatei kann nicht analysiert werden“ in Ubuntu- und Debian-basierten Linux-Distributionen

Hier ist, was Sie tun müssen. Sehen Sie sich den Namen und den Pfad der Datei genauer an Ubuntu beschwert sich.

Paketlisten lesen… Fehler!
E: Paketdatei /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_bionic_InRelease kann nicht geparst werden
E: Die Paketlisten oder Statusdatei konnten nicht geparst oder geöffnet werden.

Für example, im obigen Fehler beschwerte es sich über /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_bionic_InRelease

Dies gibt Ihnen den Eindruck, dass mit dieser Datei etwas nicht stimmt. Jetzt müssen Sie nur noch diese Datei entfernen und den Cache neu generieren.

sudo rm <file_that_is_not_parsed>

In meinem Fall könnte ich diesen Befehl verwenden: sudo rm /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_bionic_InRelease und dann den Cache neu aufbauen mit sudo apt update-Befehl.

Schritt für Schritt für Anfänger

Wenn Sie mit Linux-Befehlen vertraut sind, wissen Sie vielleicht, wie Sie die Datei mit ihrem absoluten Pfad löschen. Lassen Sie sich für unerfahrene Benutzer von mir führen, um die Datei sicher zu löschen.

Zuerst sollten Sie in das Verzeichnis gehen, in dem die Datei gespeichert ist:

cd /var/lib/apt/lists/

Löschen Sie nun die Datei, die nicht geparst wird:

sudo rm archive.ubuntu.com_ubuntu_dists_bionic_InRelease

Wenn Sie das Update jetzt erneut ausführen, wird der apt-Cache neu generiert.

sudo apt update

Zu viele Dateien können nicht geparst werden?

Dies ist in Ordnung, wenn Sie eine oder zwei Dateien haben, die während der Aktualisierung des Systems nicht geparst werden. Wenn sich das System jedoch über zehn oder zwanzig solcher Dateien beschwert, ist es zu ermüdend, sie einzeln zu entfernen.

Was Sie in einem solchen Fall tun können, um den gesamten Cache zu entfernen und anschließend neu zu generieren:

sudo rm -r /var/lib/apt/lists/*
sudo apt update

Erklärung, wie Ihr Problem behoben wurde

/var/lib/apt ist das Verzeichnis, in dem Dateien und Daten im Zusammenhang mit dem apt-Paketmanager gespeichert werden. /var/lib/apt/lists ist das Verzeichnis, das zum Speichern von Informationen für jede Paketressource verwendet wird, die in der sources.list Ihres Systems angegeben ist.

In etwas unkomplizierteren Worten speichert diese /var/lib/apt/lists den Paketinformations-Cache. Wenn Sie ein Programm installieren oder aktualisieren möchten, sucht Ihr System in diesem Verzeichnis nach den Informationen zu diesem Paket. Wenn es die Details des Pakets findet, geht es zum Remote-Repository und lädt das Programm oder sein Update tatsächlich herunter.

Wenn Sie die „sudo apt update“, baut es den Cache auf. Aus diesem Grund wird selbst dann, wenn Sie alles im Verzeichnis /var/lib/apt/lists entfernen, das Ausführen des Updates einen neuen Cache erstellt.

So wird das Problem behandelt, dass die Datei nicht geparst wird. Ihr System hat sich über ein bestimmtes Paket oder eine bestimmte Repository-Information beschwert, die irgendwie beschädigt wurde (entweder ein fehlgeschlagener Download oder eine manuelle Änderung an der sources.list). Das Entfernen dieser Datei (oder alles) und Neuerstellen des Caches behebt das Problem.

Immer noch Fehler?

Dies sollte das Problem für Sie beheben. Wenn das Problem jedoch weiterhin besteht oder Sie ein anderes damit verbundenes Problem haben, lassen Sie es mich im Kommentarbereich wissen und ich werde versuchen, Ihnen zu helfen.