Yum репозиторий возвращает 404 на primary_db

Вопрос или проблема

Мы пытаемся установить пакет из внутреннего зеркала репозитория EPEL. При этом мы получаем следующее сообщение об ошибке:

epel/primary_db            FAILED
https://yum.example.com/yum/EPEL/7/x86_64/repodata/cee535f542076e9b28a71100daf379d696383d5628fdd4571f37dae6f918d0cf0-primary.sqlite.bz2: [Errno 14] HTTPS Error 404 - Not Found
Попытка другого зеркала
https://yum.example.com/yum/EPEL/7/x86_64/repodata/cee535f542076e9b28a71100daf379d696383d5628fdd4571f37dae6f918d0cf0-primary.sqlite.bz2: [Errno 14] HTTPS Error 404 - Not Found
Попытка другого зеркала


 Один из сконфигурированных репозиториев не удался (epel),
 и у yum недостаточно кешированных данных для продолжения. В данный момент единственное
 безопасное, что может сделать yum — это завершиться с ошибкой. Существует несколько способов "исправить" это:
<сниппет нескольких вариантов отключения репозитория>

ошибка: repodata/cee535f542076e9b28a71100daf379d696383d5628fdd4571f37dae6f918d0cf0-primary.sqlite.bz2 из epel: [Errno 256] Нет больше зеркал для попытки.
https://yum.example.com/yum/EPEL/7/x86_64/repodata/cee535f542076e9b28a71100daf379d696383d5628fdd4571f37dae6f918d0cf0-primary.sqlite.bz2: [Errno 14] HTTPS Error 404 - Not Found

Посмотрев в браузере на yum.example.com/yum/EPEL/7/x86_64/repodata/, мы видим записи для 73d6…46bd-primary.sqlite.bz2 и af97…d886-primary.sqlite.bz2; однако записи для cee5…0cf0-primary.sqlite.bz2 нет. Как нам исправить эту проблему?


Следующие полные содержимое /etc/yum.repos.d/epel.repo:

[epel]
sslverify=0
description=Дополнительные пакеты для Enterprise Linux $releasever - $basearch
baseurl=https://yum.example.com/yum/EPEL/$releasever/$basearch
gpgcheckk=0
name=epel

Первое, что я бы проверил — это место на диске:

df -h

Если с этим все в порядке, я бы занялся переинициализацией локального кэша yum. Несколько многообещающих ссылок появляется в Google с запросом “переинициализировать локальный кэш yum”. Проверьте размер вашего локального кэша до и после этого с помощью:

sudo du -sh /var/cache/yum/

Удачи.

Проверьте
https://yum.example.com/yum/EPEL/7/x86_64/repodata/repomd.xml. Ссылки в этом файле, скорее всего, устарели и должны быть обновлены администратором репозитория.

Ответ или решение

Ошибка, с которой вы столкнулись, указывает на то, что YUM не может найти файл primary.sqlite.bz2 для репозитория EPEL на вашем внутреннем зеркале. Это может происходить по нескольким причинам, и ниже приведены шаги, которые вы можете предпринять для устранения проблемы.

Шаги по устранению проблемы с 404 на primary_db

  1. Проверка содержимого репозитория:
    Убедитесь, что все необходимые файлы присутствуют в директории repodata вашего внутреннего зеркала. В вашем случае, в браузере вы увидели файлы с другими хэшами, но не с тем, который запрашивает YUM. Проверьте, актуальны ли файлы и не повреждены ли они. Возможно, вам нужно обновить или пересоздать репозиторий.

  2. Проверка repomd.xml:
    Откройте файл repomd.xml по адресу:

    https://yum.example.com/yum/EPEL/7/x86_64/repodata/repomd.xml

    Убедитесь, что ссылки на файлы, такие как primary.sqlite.bz2, ведут на правильные и доступные файлы. Если ссылки устарели, то администратору репозитория необходимо будет обновить их.

  3. Очистка кеша YUM:
    Попробуйте очистить локальный кэш YUM и заново инициализировать его, чтобы убедиться, что у вас есть актуальная информация о репозиториях. Для этого выполните следующие команды:

    sudo yum clean all
    sudo yum makecache

    Это поможет обновить метаданные репозитория.

  4. Проверка пространства на диске:
    Убедитесь, что на сервере, где находится зеркало, достаточно места на диске. Вы можете проверить это с помощью команды:

    df -h
  5. Проверка конфигурации репозитория:
    Проверьте конфигурационный файл /etc/yum.repos.d/epel.repo, чтобы убедиться, что он правильно настроен. Ваш файл должен выглядеть примерно так:

    [epel]
    name=Extra Packages for Enterprise Linux $releasever - $basearch
    baseurl=https://yum.example.com/yum/EPEL/$releasever/$basearch
    enabled=1
    gpgcheck=0
    sslverify=0

    Обратите внимание на правильное написание параметров, например, gpgcheck вместо gpgcheckk.

  6. Обновление зеркала:
    Если никаких доступных файлов нет, возможно, необходимо заново создать или синхронизировать ваше внутреннее зеркало. Это может потребовать использования таких инструментов, как rsync или reposync, чтобы убедиться, что все необходимые файлы и метаданные правильны.

Заключение

Следуя приведённым выше шагам, вы сможете диагностировать и устранить проблему с ошибкой 404 на primary_db в вашем YUM-репозитории EPEL. Если все вышеперечисленное не поможет, желательно обратиться к администратору вашего внутреннего зеркала для дальнейшего исследования проблемы.

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

Капча загружается...