Назад | Перейти на главную страницу

Почему мои пакеты не включены в мой собственный репозиторий yum?

У нас есть собственный репозиторий yum, созданный с помощью createrepo, который размещен в корзине Amazon S3. Мы используем плагин yum-s3-iam настроен как объяснено в этом сообщении в блоге. чтобы позволить нашим ec2-экземплярам получить доступ к защищенным URL-адресам.

Однако мы не можем заставить yum уважать пакеты в нашем репозитории на целевом сервере. При запуске yum repolist я вижу, что репо найдено, но оба пакета в репо исключены.

[ec2-user@lysithea ~]$ sudo yum clean all && sudo yum repolist

Loaded plugins: priorities, s3iam, security, update-motd, upgrade-helper
Cleaning repos: amzn-main amzn-updates epel custom-main
Cleaning up Everything
Loaded plugins: priorities, s3iam, security, update-motd, upgrade-helper
amzn-main                                               | 2.1 kB     00:00     
amzn-main/primary_db                                    | 2.1 MB     00:00     
amzn-updates                                            | 2.3 kB     00:00     
amzn-updates/primary_db                                 | 229 kB     00:00     
epel/metalink                                           | 5.9 kB     00:00     
epel                                                    | 4.2 kB     00:00 
epel/primary_db                                         | 4.2 MB     00:00 
514 packages excluded due to repository priority protections
repo id                              repo name                  status
amzn-main                            amzn-main-Base              3,245
amzn-updates                         amzn-updates-Base             254
epel                                 Extra P...              6,639+514
custom-main                          custom-main                   0+2   

Обратите внимание, что я получаю уведомление о том, что 514 пакетов были исключены из «epel», но ничего из «custom-main».

Вот содержимое файла /etc/yum.repo.d/custom-main.repo:

[custom-main]
name=custom-main
baseurl=http://<redacted>.s3.amazonaws.com/noarch
enabled=1
s3_enabled=1
gpgcheck=0

А вот макет репозитория (который синхронизируется с ведром s3 с помощью s3cmd):

HaximusPrime:yum_repo ajbrown$ tree .
.
└── noarch
    ├── campaign-galleries-0.8.4-01.noarch.rpm
    ├── repodata
    │   ├── filelists.sqlite.bz2
    │   ├── filelists.xml.gz
    │   ├── other.sqlite.bz2
    │   ├── other.xml.gz
    │   ├── primary.sqlite.bz2
    │   ├── primary.xml.gz
    │   └── repomd.xml
    └── splunkforwarder-5.0.2-149561-linux-2.6-x86_64.rpm

Мы проверили, что сервер может получить доступ к репозиторию, и плагин настроен правильно. Фактически, я добавил несколько разных версий одного и того же RPM в репо и заметил, что выходные данные списка репозиториев yum изменились соответствующим образом (0 + 3, 0 + 4 и т. Д.).

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

Любые идеи? Есть ли способ заставить yum сообщать мне, почему пакеты не включены?

В priorities плагин исключил повторяющиеся пакеты, поскольку yum уже выбрал эти пакеты из репозитория с более высоким приоритетом. Итак, yum уже сообщает вам, почему пакеты не включены. Чтобы проверить, связаны ли приоритеты с проблемой, попробуйте запустить yum с priorities плагин отключен: sudo yum --disableplugin=priorities clean all

Если это удастся, рассмотрите возможность установки более высокого приоритета для вашего пользовательского репо, для которого в настоящее время не установлен приоритет.