使用“repomirror”为不同的操作系统版本镜像 yum 存储库?

使用“repomirror”为不同的操作系统版本镜像 yum 存储库?

我有一台 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”时,我会在 URL 后面附加“el5”。

# 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

答案1

我猜你使用的机器也在 /etc/yum.repos.d/ 中安装了 puppetlabs repo?如果你从那里删除它(并刷新 yum 缓存),你还会看到这个问题吗?

我猜你会想给 reposync 一个全新的 yum.conf(通过 --config),指定一个与正常系统目录不同的缓存目录。

答案2

感谢@devicenull 引导我走上正确的道路。我让下面的代码工作起来。我必须对和distroverpkg进行硬编码。cachedirpersistdir

这是我的 repo 文件:

# cat puppetlabs.repo.el6

# NOTE: This [main] section is required to workaround yum wierdness when we mirror distroverpkg=6 from an el5 host
[main]
distroverpkg=6
cachedir=/var/cache/puppetlabsmirror.el6/cache/
persistdir=/var/cache/puppetlabsmirror.el6/var
keepcache=0

[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=1
gpgcheck=1

现在以下命令可以正常工作:

# reposync --config=puppetlabs.repo.el6 --repoid=puppetlabs-products --newest-only --urls    http://yum.puppetlabs.com/el/6/products/x86_64/facter-1.6.7-1.el6.noarch.rpm
http://yum.puppetlabs.com/el/6/products/x86_64/facter-2.0.1-1.el6.x86_64.rpm
http://yum.puppetlabs.com/el/6/products/x86_64/hiera-1.3.2-1.el6.noarch.rpm
http://yum.puppetlabs.com/el/6/products/x86_64/hiera-puppet-1.0.0-1.el6.noarch.rpm

相关内容