Ошибка обновления sudo apt-get - файл «не удалось открыть» из-за «отказано в разрешении»


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.

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

Однако, загрузив 2 файла, я не знаю, как (или если) я могу их использовать.

Ищу советы о том, как лучше поступить.

Ответы:


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 List

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.