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リポジトリからの新しいファイルのみをプログラムでミラーリングし、標準のリポジトリディレクトリ構造に従う方法はありますか?