aktualizacja sudo apt-get nie powiodła się - plik listy „nie można otworzyć” z powodu „odmowy dostępu”

25

W ostatnim tygodniu lub dłużej uruchomienie sudo apt-get updatekończy się błędem:

Reading package lists... Done
E: Failed to fetch http://au.archive.ubuntu.com/ubuntu/dists/xenial/main/dep11/Components-amd64.yml  
Could not open file /var/lib/apt/lists/partial/au.archive.ubuntu.com_ubuntu_dists_xenial_main_dep11_Components-amd64.yml.gz - open (13: Permission denied) [IP: 202.158.214.106 80]
E: Failed to fetch http://au.archive.ubuntu.com/ubuntu/dists/xenial-backports/main/dep11/icons-64x64.tar  Could not open file /var/lib/apt/lists/partial/au.archive.ubuntu.com_ubuntu_dists_xenial-backports_main_dep11_icons-64x64.tar.gz - open (13: Permission denied) [IP: 202.158.214.106 80]
E: Some index files failed to download. They have been ignored, or old ones used instead.

Wprowadzenie jednego z 2 określonych adresów URL do paska adresu przeglądarki powoduje błąd „Nie znaleziono pliku” (404) - ale jeśli dołączę .gzdo obu adresów, odpowiednie pliki można pobrać.

Jednak po pobraniu 2 plików nie wiem, jak (lub czy) mogę je wykorzystać.

Poszukuję porady, jak najlepiej postępować.

syzyf
źródło

Odpowiedzi:

39

Zawartość tego katalogu to częściowo pobrane listy (być może przerwano APT?), Które można bezpiecznie usunąć.

Uruchom powłokę roota, mając świadomość, że masz teraz uprawnienia do wyrządzania wszelkiego rodzaju szkód w twoim systemie, więc bądź ostrożny (musimy to zrobić, ponieważ występują sudo rmbłędy)

sudo -i

Usuń zawartość katalogu (wpisz ostrożnie) i zamknij powłokę główną:

rm /var/lib/apt/lists/partial/*
exit  

Następnie uruchom aktualizację APT, aby ponownie wygenerować listy pakietów i sprawdzić, czy problem zniknął:

sudo apt update
Zanna
źródło
1

Rozwiązanie najbliższe odpowiedzi @Zanna Ale najpierw zapisz folder starych list APT jako kopię zapasową, zanim usuniesz częściowy plik z folderu list APT.

Najpierw czyste APT

sudo apt-get clean

Utwórz kopię zapasową folderu listy APT

sudo cp -r /var/lib/apt/lists /var/lib/apt/lists.old

Usuń folder częściowy z folderu Lista APT

sudo rm -rf /var/lib/apt/lists/partial/

Następnie wyczyść i zaktualizuj APT

sudo apt-get clean
sudo apt-get update

Źródło z formularza Ubuntu

Ahmed Hamdy
źródło