我想在http://yum.puppetlabs.com/上镜像以下Yum / RPM存储库:
- http://yum.puppetlabs.com/el/6/products/
- http://yum.puppetlabs.com/el/6/dependencies/
- http://yum.puppetlabs.com/el/5/products
- http://yum.puppetlabs.com/el/5/dependencies/
Puppet存储库包含有史以来发行的每个Puppet产品,并且很大,约为8GB。我只需要镜像文件的最新版本。
我尝试使用来镜像存储库reposync --newest-only
:
reposync --config=puppetlabs.repo.el6 --repoid=puppetlabs-products --repoid=puppetlabs-deps --newest-only --download_path=el/6 --quiet --downloadcomps
这会下载我需要的最新软件包。然而,reposync不会自动创建的常规目录结构(x86_64
,noarch
,SRPMS
等),并且不反射镜repodata.xml
。结果,我的yum客户会得到如下错误:
[root@web1 ~]# yum --quiet install puppet
http://mirrors.example.org/pub/puppet/el/6/puppetlabs-deps/x86_64/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found"
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: puppetlabs-deps. Please verify its path and try again
[root@web1 ~]#
有没有办法以编程方式仅镜像Yum存储库中的新文件并遵循标准存储库目录结构?
2
我暂时不会知道,但这是一个有趣的问题。我个人并不担心。8GB仅占我276GB本地镜像的一小部分...
—
Michael Hampton
我当然知道,为什么要担心大约8GB。我只是想提高效率:)另外,有时我需要快速设置EPEL或CentOS仓库的另一个yum镜像,它们非常大。我真的只需要软件包的最新N版本。
—
Stefan Lasiewski 2014年