Список загрузок пакетов с ошибками из-за ошибки несоответствия суммарной суммы
Когда я проверяю наличие обновлений, я получаю сообщение об ошибке «Ошибка при загрузке репозитория».
Это то, что подпадает под детали:
W: Не удалось получить gzip: /var/lib/apt/lists/partial/us.archive.ubuntu.com_ubuntu_dists_natty_main_source_Sources Несоответствие суммы хэша,
E: Некоторые файлы индексов не удалось загрузить. Они игнорировались или использовались старые.
16 ответов
Просто удалите все содержимое каталога /var /lib /apt /lists
:
sudo rm -rf /var /lib /apt /lists /*
затем выполните:
sudo apt-get update
Это известная проблема и усугубляется для клиентов за кэшами прокси. Некоторые крупные организации и интернет-провайдеры (особенно в отдаленных уголках мира) имеют прозрачные кеши, о которых вы, возможно, не знаете.
Основная проблема заключается в том, что формат apt-репозитория зависит от условий гонки, когда зеркало обновляется. Эта проблема особенно влияет на репозитории, которые быстро меняются, например, релиз разработки.
Вы можете отслеживать прогресс по исправлению для этого в этой ошибке (пожалуйста, отметьте себя как «влияет на меня») ошибка) и этот проект . Но имейте в виду, что это сложная проблема и может потребовать более одного релиза.
Самый простой способ исправить это:
sudo apt-get clean
Обновление sudo apt-get
У меня все еще возникла проблема после удаления каталогов и выполнения sudo apt-get update
.
Только следующий шаг решил мою проблему:
sudo sed -i -re 's /\ w + \. archive \ .ubuntu \ .com /archive.ubuntu.com /g' /etc/apt/sources.list
Я не знаю, правильно ли это это сделать ...
Я нашел решение здесь .
Единственное решение, которое сработало для меня, - это unix.stackexchange .
Это происходит потому, что есть известная ошибка, и это решение должно обновляться с помощью другого метода сжатия, поэтому файлы загружаются правильно и контрольная сумма преуспевает.
Попробуйте:
sudo rm -rf /var /lib /apt /lists /partial
sudo apt-get update -o Acquire :: CompressionTypes :: Order :: = gz
(спасибо @brook_hong из комментариев для части rm)
Это может произойти, когда ваше зеркало не обновлено или не будет перегружать ошибки. Вы можете подождать некоторое время и повторить попытку или переключиться на другое зеркало:
Если вы за прокси-сервером, создайте файл с именем 99fixbadproxy
в /etc/apt/apt.conf.d /
:
sudo gedit /etc/apt/apt.conf.d/99fixbadproxy
Вставьте это в 99fixbadproxy
и сохраните его:
Acquire :: http :: Pipeline-Depth 0;
Приобретите :: http :: No-Cache true;
Acquire :: BrokenProxy true;
Теперь запустите команду обновления:
sudo apt-get update
Следующие команды могут решить вашу проблему.
sudo rm -R /var /lib /apt /lists /partial /*
, а затем
sudo apt-get update & & & & & Обновление sudo apt-get
он решит вашу проблему. Я также столкнулся с той же проблемой, но приведенные выше команды решили проблему для меня. Поэтому дайте им попробовать.
У меня была такая же проблема, и все решения, предоставляемые с помощью терминала, не помогли.
Для меня это было:
Настройки â † 'Программное обеспечение и amp; Обновления â † 'Программное обеспечение Ubuntu: Загрузить с: Изменить локальный
на Основной сервер
.
Он начинает перезагружать репозитории и обновлять. Когда я вхожу:
sudo apt-get update
После этого не было никаких проблем. Я использую Ubuntu 14.04.4 LTS.
Я не знаю, что это подходящее решение или нет, но я сделал следующее и сообщение об ошибке исчезло:
После ввода sudo apt-get update
в терминале, он дает мне имена некоторых пакетов, которые вызывают ошибку, тогда я сделал следующее:
Менеджер обновлений (обновление программного обеспечения) â † 'Настройка â †' Настройка источников программного обеспечения â † 'Другое программное обеспечение [tab] â †' Снимите флажки с пакетов
После нажатия кнопки «закрыть», менеджер обновлений снова начал проверять наличие обновлений, и я увидел это сообщение: «программное обеспечение на этом компьютере обновлено. Последнее обновление 2 секунды назад».
Kubuntu 12.04
У меня была такая же проблема, и все решения, предоставляемые с помощью терминала, не помогли.
Для меня это было:
Настройки â † 'Программное обеспечение и amp; Обновления â † 'Другое программное обеспечение: Снимите все флажки и нажмите кнопку закрытия.
Он начинает перезагружать репозитории и обновлять. Когда я вхожу:
sudo apt-get update
После этого не было никаких проблем. Я использую Ubuntu 13.10.
У меня была аналогичная проблема и она была решена, открыв приложение «Software & Updates», а на вкладке «Ubuntu Software» изменив значение «Загрузить с» (в этом раскрывающемся списке, попробуйте выбрать, например, Main Server, если это не так).
Как следует @ robie-basak, я использовал apt-cacher-ng
как зеркальное кэширование. Поэтому я удаляю прокси и проблема решена.
Я удаляю прокси в файле /etc/apt/apt.conf.d/01proxy
:
#Acquire :: http :: Proxy "http: //xxx.xx.xx.xx: 4321";
Затем нужно:
sudo rm -rf /var /lib /apt /lists /*
Обновление sudo aptitude
Обновление sudo aptitude
Я только что установил Ubuntu 17.10 и получал ту же ошибку в Hash Sum Mismatch для некоторого репозитория. Я пошел в Программное обеспечение и проверенный источник, как показано ниже, и больше не было никаких проблем для загрузки репозитория с терминала.
Это может произойти, если вы используете роутер с родительским контролем, и havent помещает ваш малиновый pi в «неуправляемый» список. Для меня я мог видеть, что URL-адрес перенаправлялся на домен окружности, управляемый маршрутизатором.
Итак, я просто добавил свой pi в неуправляемый список, и он работал нормально.
Я решил, что все пакеты не установлены, выполнив эту команду:
sudo apt-get install PACKAGENAME
Для каждого из пакетов. Теперь они установлены, и ошибка «Несоответствие хэш-суммы» исчезла.