при попытке обновить листинги пакетов с помощью apt update
или apt-get update
я получаю следующую ошибку:
E: Failed to fetch http://lt.archive.ubuntu.com/ubuntu/dists/xenial/universe/dep11/Components-amd64.yml.gz Hash Sum mismatch
E: Failed to fetch http://lt.archive.ubuntu.com/ubuntu/dists/xenial/universe/dep11/icons-64x64.tar Writing more data than expected (7468511 > 7467723) [IP: 193.219.61.87 80]
Это как-то связано с локализованным распространителем пакетов или все это я вместе? Я использую версию beta2, которую я вчера успешно установил и обновил (без сообщений об ошибках). Раньше я использовал производную версию 14.04, которая также не вызывала ошибок. В чем может быть причина этой ошибки?
РЕДАКТИРОВАТЬ: для дублирования маркеров название темы решает другую проблему, а не хеш-сумму проблема, на которую ссылаются.
Я думаю, вы обращались к локальному зеркалу репо во время обновления. Подождите некоторое время (обычно достаточно 1 часа), прежде чем повторить попытку. Это может произойти со всеми живыми релизами, а не только с 16.04 (который еще официально не вышел, как комментировал кто-то другой).
Как вариант, вы можете отредактировать /etc/apt/sources.list
удалить префикс "lt" в любимом редакторе или использовать
sudo sed -i 's/http:\/\/lt\./http:\/\//g' /etc/apt/sources.list
. Это позволит вам получить доступ к основным репозиториям за счет более медленного доступа.
Конечно, вы можете заменить lt
своим собственный код страны ISO 3166-1 alpha-2.
Добавьте параметр, который добавляет заголовок «no-cache» к запросам http / https. Он запрашивает у apt-сервера некэшированные файлы. Это может быть полезно, если между вашим компьютером и подходящим зеркалом / сервером есть какой-либо (сломанный) механизм кэширования. (Например, прокси, прозрачное кеширование интернет-провайдером и т. Д.)
sudo apt -o Acquire::https::No-Cache=True -o Acquire::http::No-Cache=True update
просто запустите эту команду в своем терминале, и она должна работать нормально