Powinieneś być w stanie pracować z poprzednim znanym plikiem dobrego stanu i aktualizować stamtąd. Za każdym razem, gdy wykonujesz instalację lub aktualizację, plik statusu jest zapisywany w kopii zapasowej gzip w folderze / var / backups . Wykonanie polecenia ls -l dpkg * w katalogu pokazuje:
-rw-r--r-- 1 root root 2266732 2010-09-30 08:35 dpkg.status.0
-rw-r--r-- 1 root root 624182 2010-09-29 08:49 dpkg.status.1.gz
-rw-r--r-- 1 root root 623844 2010-09-28 08:55 dpkg.status.2.gz
-rw-r--r-- 1 root root 620358 2010-09-24 11:04 dpkg.status.3.gz
-rw-r--r-- 1 root root 619021 2010-09-23 15:34 dpkg.status.4.gz
-rw-r--r-- 1 root root 619013 2010-09-23 08:03 dpkg.status.5.gz
-rw-r--r-- 1 root root 618968 2010-09-21 08:33 dpkg.status.6.gz
Istnieje również kopia zapasowa pliku utworzonego w katalogu / var / lib / dpkg / o nazwie status-old. Wykonanie statusu ls -l * w katalogu pokazuje:
-rw-r--r-- 1 root root 2266732 2010-09-30 08:35 status
-rw-r--r-- 1 root root 2267191 2010-09-30 08:35 status-old
Tak więc, aby wyjść z korupcji, powinieneś być w stanie wykonać następujące czynności:
1. Wykonaj kopię zapasową uszkodzonego pliku statusu :
mv /var/lib/dpkg/status /var/lib/dpkg/status_bkup
2. Skopiuj najnowszy plik statusu dpkg na jedno z powyższych źródeł:
zarówno
cp /var/lib/dpkg/status-old /var/lib/dpkg/status
lub
cp /var/backups/dpkg.status.#.gz /var/lib/dpkg/
gunzip -d /var/lib/dpkg/dpkg.status.#.gz
mv /var/lib/dpkg/dpkg.status.# /var/lib/dpkg/status
3. Następnie uruchom aktualizację apt-get:
sudo apt-get update
Że należy to zrobić.
status
plik: jest to podstawowe źródło informacji i chociaż wiele z nich jest zbędnych, nie wszystkie z nich są. Jednak prawdopodobnie możliwe jest ręczne naprawienie pliku. Opublikuj fragment pliku wokół problematycznej linii, powiedzmy 20–40 linii, w tym co najmniej jednąPackage:
linię przed i po linii 15945.