我有一台EL5机器。在这台主机上,我想为 EL6 rpm 镜像一个 Puppet 存储库。如何在 EL5 主机上镜像 EL6 或 Fedora 存储库?
我正在使用reposync
,因为我只需要 repo 上可用的最新包,而不是整个存储库。
我的 .repo 文件包含以下内容:
# cat puppetlabs.repo.el6
[main]
# Override default releasever, per `man yum.conf`
releasever=6
# Try distroverpkg instead?
distroverpkg=6
[puppetlabs-products]
name=Puppet Labs Products El 6 - $basearch
baseurl=http://yum.puppetlabs.com/el/6/products/$basearch
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-puppetlabs
enabled=0=1
gpgcheck=1
我的命令行如下。如您所见,reposync
当我需要它说“el6”时,将“el5”附加到 URL 上。
# lsb_release -r
Release: 5.10
# reposync --newest-only --repoid=puppetlabs-products --config=puppetlabs.repo.el6 --urls
http://yum.puppetlabs.com/el/6/products/x86_64/facter-1.6.6-1.el5.noarch.rpm
http://yum.puppetlabs.com/el/6/products/x86_64/facter-2.0.1-1.el5.x86_64.rpm
http://yum.puppetlabs.com/el/6/products/x86_64/hiera-1.3.2-1.el5.noarch.rpm
我猜你正在使用的机器也在 /etc/yum.repos.d/ 中安装了 puppetlabs 存储库?如果您从那里删除它(并刷新 yum 缓存),您还会看到这个问题吗?
我怀疑你会想要给 reposync 一个全新的 yum.conf(通过 --config),指定一个不同的缓存目录,然后是正常的系统目录。
感谢@devicenull 引导我走上正确的道路。我得到了以下工作。我必须
distroverpkg
像cachedir
and一样硬编码persistdir
。这是我的回购文件:
现在以下命令可以正常工作: