我们有一个使用createrepo创build的定制yum存储库,它位于Amazon S3存储桶中。 我们正在使用本博客文章中介绍的configurationyum-s3-iam插件 。 允许我们的ec2实例访问受保护的URL。
但是,我们似乎无法让yum尊重目标服务器上的存储库中的软件包。 在运行yum repolist时,我可以看到repo被find,但是repo中的两个软件包都被排除在外。
[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
这里是版本库布局(与使用s3cmd的s3存储库同步):
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
我们已validation服务器可以访问存储库,并且插件configuration正确。 事实上,我已经在回购中添加了几个不同版本的RPM,并观察yum回购列表输出相应的变化(0 + 3,0 + 4等等)。
我试过用不同的体系结构重新包装我们的专有RPM,但这似乎没有任何区别。
有任何想法吗? 有什么办法可以强制yum告诉我为什么不包含这些软件包?
priorities插件排除了重复包,因为yum已经从优先级较高的存储库中select了这些包。 所以yum已经告诉你为什么不包含这些软件包了。 要testing优先级是否与问题相关,请尝试在priorities插件被禁用的情况下运行yum: sudo yum --disableplugin=priorities clean all
如果这是成功的,那么考虑为您的自定义回购设置更高的优先级,目前没有设置优先级。