更新rpm回购的最佳实践

我想问一下最佳实践如何提供和更新私人rpm回购 (epel,centos,rhel镜像)。

我使用reposynccreaterepo工具下载软件包并生成'repodata',通过networking服务器暴露出来,一切正常,但是…

什么是更新存储库的最佳方式?

复杂的方式

我想知道像这样的文件夹结构中的符号链接:

 /repos/7Server/x86_64/Ref -> /repos/7Server/x86_64/Ref.2016-06-22 

所以每次我更新存储库:

  1. 将创build副本
  2. 与上游同步
  3. 重新生成元数据
  4. 点符号链接到最新版本
  5. 删除旧版本(文件夹)

元数据将一直匹配包,存储库将保持一致。

简单的方法

但是在我发现的每一个文档中,人们只是通过删除和更新新的软件包参数来进行简单的reposync 。 不关心客户的任何incusiontent状态。


所以我只是想知道,哪种方法最好,因为简单的方法可以节省一些时间,磁盘io,configuration和自动化的复杂性。

谢谢你的帮助。

这是一个值得关注的问题,但客户端也是一个问题。 客户端还caching回购信息。 这意味着当客户端尝试更新repo更改时仍然有问题,但客户端尚未更新其本地高速caching信息。 所以你最终还是yum clean all代价去强迫他们更新本地caching。

所以真的,担心回购的一致性是可以的,但是你也必须在客户端处理。 所以我只是更新回购,并清理客户端上的caching。

另外,你多久更新客户端软件包? 您可以在几个小时之后安排reposyncs,或者有时客户端更新不会发生。