有没有什么工具可以维护私有 yum 仓库?
具体来说,我想:
- 上传 rpm 并将其放置在适当的目录中;
- 索引/元数据自动保持更新;
- 保留旧版本;
- 拒绝无效的 rpm(例如覆盖现有的 rpm)。
更新:
这将是具有我定制的 RPM 的 repo,而不是现有 RPM 的镜像。
答案1
安装yum-utils
(编辑:和createrepo
)。
由于 yum 存储库只是一个createrepo(8)
通过 http 运行并提供服务的目录,因此您提到的上传、保留旧版本等功能可以通过您常用的工具(如 shell、ssh、rsync 等)完成。或者您是在寻找一种有吸引力的基于 Web 的存储库管理方法?我不确定是否存在。
至于自动更新元数据,也许只需使用 cron?真的,如果这些是您自己的软件包,那么您应该在将其放入 repo 之前测试 rpm,因此可能不需要自动检查 rpm 是否无效,但再次使用常规 cron 作业rpm --test
可以告诉您。
我可能错过了一些很棒的工具,但多年来这对我来说已经满足了我们有限的需求。
答案2
正如 Andrew 所说,createrepo 就是您所需要的。
将您的 rpm 放在一个目录中,每次添加 rpm 时都运行 createrepo。通过 http 公开此目录。通过其 /etc/yum.repos.d/ 目录将此 http url 添加到兼容客户端。
答案3
我用回购管理本地 yum 存储库。它是一种用于镜像存储库的工具,您可以根据自己的情况将其设置为镜像包含自定义 rpm 的本地目录。