Jak naprawić błąd dpkg [2]?

14

Za każdym razem, gdy próbuję zainstalować lub usunąć pakiet, pojawia się ten błąd. Myślałem, że może to był dysk twardy, ale sprawdzenie dysku dało mi czysty rachunek stanu zdrowia.

dpkg: unrecoverable fatal error, aborting:
reading files list for package 'linux-headers-3.16.0-31': Input/output error
E: Sub-process /usr/bin/dpkg returned an error code (2)
A package failed to install.  Trying to recover:

Wypróbowałem rozwiązanie polegające na usunięciu informacji o tym pliku z pliku statusu dpkg, ale bezskutecznie. Próbowałem wyczyścić paczkę, ale bezskutecznie. Utknąłem w tym momencie, ponieważ nic, co mogę znaleźć w Google, nie pomaga.

Aktualizacja:

Tak właśnie mówi błąd:

dpkg: unrecoverable fatal error, aborting:
E: Sub-process /usr/bin/dpkg returned an error code (2)
A package failed to install.  Trying to recover:

Po próbie: /ubuntu//a/603305/1992

Aktualizacja 2:

Wygląda na to, że dysk ma uszkodzone sektory, ale liczba przeniesionych sektorów wynosi 0. Dysk jest jednak stosunkowo stary, więc spodziewam się pewnych problemów. Nie będę mógł go natychmiast wymienić i do tego czasu nadal chciałbym być w stanie aktualizować system (szczególnie ze względów bezpieczeństwa).

Zauważyłem, że wystąpił problem z skopiowaniem niektórych sum kontrolnych md5 związanych z pakietem wymienionym w błędzie, ale nie wiem, co z nimi zrobić, na przykład, czy ich wyczyszczenie pozwoli dpkg kontynuować.

RolandiXor
źródło

Odpowiedzi:

19

Znalazłem odpowiedź tu i tutaj .

Zastanawiające jest dla mnie to, że próbowałem już dwa razy i to nie działało. Prawdopodobnie zadziałało tym razem, ponieważ użyłem skryptu, który znalazłem w odpowiedziach startera, który utworzył kopię zapasową i przywrócił to, co mógł ... Nie wiem. Tak czy inaczej, oto poprawka:

  • pkexec gedit /var/lib/dpkg/status
  • Wyszukaj niepoprawny pakiet według nazwy i usuń jego wpis.
  • Zapisz plik i zamknij gedit.
  • biegać sudo dpkg --configure -a
  • uruchomić na sudo apt-get -f installwszelki wypadek.
  • Kontynuuj, jeśli nie ma żadnych błędów.
RolandiXor
źródło