У меня есть несколько подходящих репозиториев для разных версий Ubuntu, все они довольно похожи, за исключением того, что я только что сделал для xenial серверов. Когда xenial-сервер выполняет обновление apt-get и переходит к моему репо, он получает ошибку «Ошибка хэш-суммирования» для Packages.gz. Что может быть причиной этого?
Я не думаю, что это дубликат списка пакетов для загрузки проблем из-за «несоответствия суммы хеша», потому что ответы там все предполагают, что проблема связана с клиентом, но в моем случае проблема находится на сервере, поэтому независимо от того, что вы делаете на клиенте, это не устраняет проблему. Неудивительно, что ни один из ответов на этот вопрос не работал.
Для решения этой проблемы было 2 части.
Используя [trusted=yes] в списке источников на клиенте. Удаление файлов InRelease и Release на apt-сервере.Если [trusted = yes] не был в списке источников на клиенте, тогда при выполнении apt-get он будет жаловаться, что apt-сервер не имеет файла Release, если его там нет. Если файл выпуска находится там, он выдаст сообщение об ошибке
Невозможно найти ожидаемую запись «Пакеты» в файле Release (Неверная запись sources.list или неверный файл).Вышеупомянутая ошибка также возникает, если [trusted=yes] находится в списке источников, но репозиторий содержит файлы InRelease и Release.
В любом из этих случаев файлы для сервера будут сделанные в / var / lib / apt / lists / partial на клиенте, а список пользователей клиента не будет обновлен.
Если оба требования выполнены, то все, что нужно клиенту, это удалить файлы, которые были в / var / lib / apt / lists / partial, а затем сделать apt-get update.
Для решения этой проблемы было 2 части.
Используя [trusted=yes] в списке источников на клиенте. Удаление файлов InRelease и Release на apt-сервере.Если [trusted = yes] не был в списке источников на клиенте, тогда при выполнении apt-get он будет жаловаться, что apt-сервер не имеет файла Release, если его там нет. Если файл выпуска находится там, он выдаст сообщение об ошибке
Невозможно найти ожидаемую запись «Пакеты» в файле Release (Неверная запись sources.list или неверный файл).Вышеупомянутая ошибка также возникает, если [trusted=yes] находится в списке источников, но репозиторий содержит файлы InRelease и Release.
В любом из этих случаев файлы для сервера будут сделанные в / var / lib / apt / lists / partial на клиенте, а список пользователей клиента не будет обновлен.
Если оба требования выполнены, то все, что нужно клиенту, это удалить файлы, которые были в / var / lib / apt / lists / partial, а затем сделать apt-get update.