Вопрос Список загрузок пакетов с ошибками из-за ошибки «Несоответствие суммарной суммы»


Когда я проверяю наличие обновлений, я получаю сообщение об ошибке «Ошибка при загрузке репозитория».

Это то, что поддается деталям:

W: Failed to fetch gzip:/var/lib/apt/lists/partial/us.archive.ubuntu.com_ubuntu_dists_natty_main_source_Sources  Hash Sum mismatch, 
E: Some index files failed to download. They have been ignored, or old ones used instead.

337
2018-05-09 20:55


происхождения




ответы:


Просто удалите все содержимое /var/lib/apt/lists каталог:

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

затем выполните:

sudo apt-get update

406
2018-05-09 21:52



Если вы удалите все файлы, вы должны загрузить их снова. Вы можете просто удалить недопустимый файл, чтобы ускорить этот процесс. - Behrang
Я помню, как это происходило и с Debian. Решением было переключить хранилища (например, с us.ubuntu.com на XX.ubuntu.com, где XX - код вашей страны) или ждать. Лучше всего было бы немного подождать и повторить попытку позже. Удаление списков может исправить разбитые списки, но это редко бывает. - f.ardelian
Старый вопрос, но на некоторых дистрибутивах (как emdebian), после этого вам нужно будет "mkdir /var/lib/apt/lists/partial«(Как root, очевидно.), Иначе вы не сможете"apt-get update"или иным образом использовать apt. - Archenoth
@AlyssaGono, если это папка, вам нужно запустить rm с помощью рекурсивного флага: sudo rm -R /var/lib/apt/lists/* однако даже это не помогло мне. - mchid
Нам нужен префикс -rf, так что это будет выглядеть sudo rm -rf /var/lib/apt/lists/* - Askar


Это известная проблема и усугубляется для клиентов за кэшами прокси. Некоторые крупные организации и интернет-провайдеры (особенно в отдаленных уголках мира) имеют прозрачные кеши, о которых вы, возможно, не знаете.

Основная проблема заключается в том, что формат apt-репозитория зависит от условий гонки, когда зеркало обновляется. Эта проблема особенно влияет на репозитории, которые быстро меняются, например, релиз разработки.

Вы можете отслеживать ход исправления для этого в эта ошибка (пожалуйста, отметьте себя как «влияет на меня тоже» в ошибке) и этот проект, Но имейте в виду, что это сложная проблема и может потребовать более одного релиза.


121
2017-07-05 22:21



Этот проект более недоступен; вот архивная копия, - Eliah Kagan
эта ошибка существует и на ubuntu 16.04 - Scott Stensland
Ошибка отмечена как «Fix Released».
Я просто изменяю свое зеркало по умолчанию на лучший сервер и его работу для меня. - habibun


Самый простой способ исправить это:

sudo apt-get clean
sudo apt-get update

79
2018-05-22 12:25



Попробовав принятый ответ, у меня все еще были те же ошибки, поэтому сразу же исправил проблему - Alex
дела sudo rm -rf /var/lib/apt/lists/* тогда sudo apto-get clean исправил проблему и для меня. Ни работали изолированно. - Cam
Это должен быть правильный ответ. - Clayton Dukes
не помогает на ubuntu 16.04 ... и ни один комментарий выше не помогает - Scott Stensland
sudo apt-get clean не помогло с 16.04, но sudo rm -rf /var/lib/apt/lists/* починил это - sdaffa23fdsf


У меня все еще была проблема после удаления каталогов и выполнения sudo apt-get update,
Только следующий шаг решил мою проблему:

sudo sed -i -re 's/\w+\.archive\.ubuntu\.com/archive.ubuntu.com/g' /etc/apt/sources.list

Я не знаю, правильно ли это это сделать ...
Я нашел решение Вот,


42
2017-08-27 19:55



Следует отметить, что de-part указывает сервер для Германии и что этот скрипт заменяет локальный сервер основным сервером. Переход к Источники программного обеспечения GUI-путь и переключение настроек там были бы более безопасными и обратимыми для многих пользователей. Следующее должно работать почти для каждой страны: sudo sed -i 's/[a-z][a-z].archive.ubuntu.com/archive.ubuntu.com/g' /etc/apt/sources.list - LiveWireBT


Единственное решение, которое сработало для меня, - это unix.stackexchange,

Это происходит потому, что существует известная ошибка, и решение заключается в обновлении с помощью другого метода сжатия, поэтому файлы загружаются правильно, и контрольная сумма преуспевает.

Попробуйте:

sudo rm -rf /var/lib/apt/lists/partial
sudo apt-get update -o Acquire::CompressionTypes::Order::=gz

(спасибо @brook_hong из комментариев для части rm)


28
2018-05-31 14:13



Это единственное решение, которое сработало для меня. Благодарю. - Cerin
Это сработало и для меня. Обратите внимание, что вам не обязательно всегда запускать эту команду. Просто запустите его один раз, а затем вы можете запустить «apt-get update» без ошибок. - dalf
Прежде чем попробовать с опцией, мы должны очистить частичную папку - sudo rm -rf /var/lib/apt/lists/partial, Почему я написал статью. brookhong.github.io/2016/10/10/... - brook hong
Я пробовал использовать общее решение с различных форумов, но это работает из коробки. Спасибо. - wkhwilo
Работал для меня на Ubuntu 16.04 / linux mint - David Okwii


Это может произойти, когда ваше зеркало не обновлено или не будет перегружать ошибки. Вы можете подождать некоторое время и повторить попытку или переключиться на другое зеркало:


22
2018-04-28 02:04



Почему сервер не обновляется или перегружается, выдает файл с правильным именем успешно загрузить (в том смысле, что соединение не прекращается до тех пор, пока все байты не будут отправлены и не получены), но будут повреждены? (Я не утверждаю, что этого не происходит, я просто надеюсь, что вы сможете объяснить, почему это происходит.) - Eliah Kagan
@EliahKagan Обычно проблема заключается не в том, что сам файл поврежден, а в том, что есть файл (я упрощаю, но не слишком), и файл индекса, содержащий хэш (отпечаток пальца) файла данных. Когда репозитории обновляются (происходит каждый час) на сервере, один файл после другого обновляется. Теперь может случиться так, что ваш клиент (apt-get или аналогичный) обращается к серверу, когда файл данных обновлен, но индексный файл еще не обновлен (или наоборот). Тогда хэш не соответствует файлу данных, а клиент (ложно) предполагает, что файл данных поврежден. - Patrick Häcker
Изменение зеркала работало для меня, когда ни один из вышеперечисленных ответов не сделал. - mango


Если вы находитесь за прокси-сервером, создайте файл с именем 99fixbadproxy в /etc/apt/apt.conf.d/:

sudo gedit /etc/apt/apt.conf.d/99fixbadproxy

Вставьте это в 99fixbadproxy и сохраните его:

Acquire::http::Pipeline-Depth 0;
Acquire::http::No-Cache true;
Acquire::BrokenProxy    true;

Теперь запустите команду update:

sudo apt-get update

5
2017-08-08 21:37





Следующие команды могут решить вашу проблему.

sudo rm -R /var/lib/apt/lists/partial/*

а потом

sudo apt-get update && sudo apt-get upgrade

он решит вашу проблему. Я также столкнулся с той же проблемой, но приведенные выше команды решили проблему для меня. Поэтому дайте им попробовать.

Ссылка на решение


4
2017-12-17 21:47



Я просто попытался, и это не сработало; Первый apt-get update снова создайте файлы в том же месте в этом каталоге. - Volker Siegel