Не вдалося оновити sudo apt-get update - файл не вдалося відкрити через "дозвіл відхилено"


25

Протягом останнього тижня чи більше, біг sudo apt-get updateзавершився помилкою:

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.

Введення будь-якого з двох вказаних URL-адрес у адресний рядок браузера призводить до помилки "Файл не знайдено" (404) - але якщо я додаю .gzобидві адреси, то відповідні файли можна завантажити.

Однак, завантаживши два файли, я не знаю, як (або якщо) я можу їх використовувати.

Шукайте поради щодо того, як краще діяти.

Відповіді:


39

Вміст цього каталогу є частково завантаженими списками (можливо, APT був перерваний?), Який можна безпечно видалити.

Запустіть кореневу оболонку, маючи на увазі, що тепер у вас є дозвіл нанести всі види шкоди вашій системі, тому будьте обережні (нам це потрібно через sudo rmпомилки)

sudo -i

Видаліть вміст каталогу (обережно введіть) та вийдіть із кореневої оболонки:

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

Потім запустіть оновлення APT, щоб відновити списки пакетів і перевірте, чи проблема не зникла:

sudo apt update

1

Розв’язання, найближче до відповіді @Zanna Але включіть як збереження стару папку списків APT, перш ніж видалити частковий файл із папки списків APT.

Перший чистий APT

sudo apt-get clean

Створіть резервну папку списку APT

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

Видаліть часткову папку із папки списку APT

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

Потім очистіть і оновіть APT

sudo apt-get clean
sudo apt-get update

Джерело з публікації форми Ubuntu

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.