W ubiegłym tygodniu nasz serwer został DDOSed, a po tym problem z jednym z naszych serwerów.
Na serwerze działa Debian Jessie i przy każdej próbie uruchomienia apt-get update
pojawia się następujący błąd:
Reading package lists... Error!
E: Encountered a section with no Package: header
E: Problem with MergeList /var/lib/dpkg/status
E: The package lists or status file could not be parsed or opened.
Wszystko, co znalazłem, sugeruje, że normalnie można to rozwiązać przez uruchomienie sudo rm /var/lib/apt/lists/* -vf
lub sudo dpkg --configure -a
wcześniej, ale żadne z nich nie działa dla mnie. Próbowałem też przejść na inne lustro, ale to nie rozwiązuje problemu.
Jakieś sugestie, ludzie?
linux
debian
apt-get
debian-jessie
mattbd
źródło
źródło
Odpowiedzi:
Twój komunikat o błędzie oznacza po prostu, że plik statusu został uszkodzony.
Powinieneś to najpierw usunąć,
następnie odtwórz go,
następnie wykonaj aktualizację i aktualizację.
Jeśli to nie zadziała, sprawdź uprawnienia i własność zarówno pliku statusu, jak i jego drzewa katalogów, i ewentualnie sprawdź, czy dysk jest pełny, nigdy nie wiesz ...
źródło
Czy masz kopie zapasowe? W każdym razie zacznij teraz tworzenie kopii zapasowej do
/root
treści/var/lib/dpkg
(możesz pominąćinfo/
, aby móc przywrócić rzeczywisty stan w przypadku nieudanej próby.Czy masz wystarczająco dużo wolnego miejsca na dysku
/var
? (DDOS ma tendencję do zapełniania się/var
, wypełniania logów).Po dwóch powyższych kontrolach spróbuj skopiować
-old
pliki do tego samego pliku, ale bez przyrostka-old
. (Jeśli masz kopie zapasowe, po prostu skopiuj te pliki z kopii zapasowej).źródło
Wyczyść lokalne repozytorium pobranych plików pakietów. Otwórz terminal i wpisz:
Powiedz systemowi, aby ściągnął najnowszą listę oprogramowania z każdego znanego mu archiwum.
źródło