LinuxFAQ.ru

Ошибка apt hash sum mismatch в Ubuntu — как исправить быстро

Ошибка Hash Sum mismatch возникает в Ubuntu при обновлении пакетов через apt. Статья поможет системным администраторам и пользователям начального и среднего уровня быстро устранить проблему, связанную с повреждённым кэшем и списками репозиториев.

Почему появляется ошибка Hash Sum mismatch

  • Повреждённые локальные кэши пакетов и списков в /var/lib/apt/lists или /var/cache/apt/archives
  • Неполная или прерванная загрузка данных с зеркала репозитория
  • Кэш старой или несогласованной версии пакетов в системе
  • Проблемы с зеркалом репозитория (например, зеркальный сервер не обновлён или устаревший)

Пошаговое решение

Шаг 1: Очистка кэша списков пакетов

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

Удаляем все файлы списков из папки apt. Это позволит загрузить свежие списки пакетов. Если боитесь удалить всё сразу, сначала посмотрите содержимое:

ls /var/lib/apt/lists/

Шаг 2: Очистка кэша скачанных пакетов

sudo apt clean

Команда удаляет скачанные .deb-файлы из /var/cache/apt/archives, что исключит использование повреждённых или устаревших пакетов при установке.

Шаг 3: Повторное обновление списков пакетов

sudo apt update

Обновляем информацию о пакетах с чистого листа. Если всё прошло успешно, ошибка должна исчезнуть. В выводе ожидается, что apt скачает списки без ошибок.

Шаг 4: Проверка зеркала репозитория (опционально)

Если ошибка сохраняется, возможно проблема в выбранном зеркале Ubuntu. Проверьте текущий репозиторий в /etc/apt/sources.list:

cat /etc/apt/sources.list | grep -v '^#'

При необходимости вручную смените зеркало на официальное, например, archive.ubuntu.com. Для этого отредактируйте файл:

sudo nano /etc/apt/sources.list

Замените проблемные адреса на:

http://archive.ubuntu.com/ubuntu/

Затем повторите sudo apt update.

Альтернативные методы

Удаление повреждённых пакетов вручную

В некоторых случаях возникает ошибка из-за повреждённых кешированных пакетов в /var/cache/apt/archives/partial. Можно удалить эти файлы:

sudo rm -rf /var/cache/apt/archives/partial/*

После этого повторите sudo apt clean и sudo apt update.

Изменение способа загрузки apt

Иногда помогает отключение HTTP прокси или использование другого метода загрузки. Например, можно принудительно использовать IPv4:

sudo apt -o Acquire::ForceIPv4=true update

Это решит проблемы, связанные с сетевыми особенностями.

Проверка результата

После выполнения описанных шагов убедитесь, что ошибка исчезла и обновление прошло успешно:

sudo apt update

Отсутствие сообщений Hash Sum mismatch означает решение проблемы.

Как избежать в будущем

  • Регулярно очищайте кэш apt с помощью sudo apt clean
  • Используйте проверенные зеркала репозиториев
  • Избегайте прерывания процесса apt update и apt upgrade
  • Проверяйте стабильность интернет-соединения при работе с пакетным менеджером

FAQ

Почему появляется Hash Sum mismatch?
Это связано с несоответствием контрольных сумм загруженных списков пакетов и кеша, чаще всего из-за повреждённых данных или проблем с зеркалом.

Можно ли удалить содержимое /var/lib/apt/lists без риска?
Да, это безопасно. Пакетный менеджер заново загрузит списки при следующем обновлении.

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

Смотрите также: Использование apt-key в Ubuntu — базовые команды и практика

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Свежие материалы