Yum 试图在 CentOS 6 上安装 .el7 版本
Yum trying to install .el7 release on CentOS 6
我生成了两个 RPM。一个用于 CentOS 6,一个用于 CentOS 7。
my-package-0.0.1-1.el6.x86_64
my-package-0.0.1-1.el7.x86_64
当我在 CentOS 6 机器上执行 yum info my-package
时,它给了我 el7 信息。当我做 yum install my-package
它做同样的事情,得到 el7 版本。为什么要这样做?我试图避免在 el6 机器上安装 el7 版本。
听起来它们在同一个 yum 存储库中。你不应该。您应该将一个发布到 CentOS6 存储库,将另一个发布到 CentOS7 存储库。否则,yum
正在比较它们并在比较发布标签时决定 7 > 6,因此这是最新的可用包。
el6
(又名 "dist tag")作为版本的后缀方便用户使用,不是 RPM 可以select直接上。
同意显然 OP 将两个 RPM 放在同一个存储库中,@aaron-d-marasco 忽略了一些细节:
el6
标签不是 "convenience to the user" 而是打包者的变通方法。
如果您检查软件包的元信息,您可能会注意到提供的软件包中的 .el6
(或 .el7
)是 附加的 到 release 标签,例如,对于 zip-3.0-10.el7.x86_64
,您可能会看到类似这样的内容:
Name : zip
Version : 3.0
Release : 10.el7
Architecture: x86_64
RPM 选择规则将 whole 标签用于 version 和 release 对于每个指定的 name。
- 提到的 dist 标签与 release 标签的其余部分一起排序
- 解决方法是因为在模式中没有单独的元信息用于分发,但包装商希望跟踪这一点。
- 因为 release 标签是 "owned" 由打包者(和 version 由上游开发),然后打包者决定如何使用它来组织包——根据
yum
. 选择 RPM 的内置规则
进一步阅读:
我生成了两个 RPM。一个用于 CentOS 6,一个用于 CentOS 7。
my-package-0.0.1-1.el6.x86_64
my-package-0.0.1-1.el7.x86_64
当我在 CentOS 6 机器上执行 yum info my-package
时,它给了我 el7 信息。当我做 yum install my-package
它做同样的事情,得到 el7 版本。为什么要这样做?我试图避免在 el6 机器上安装 el7 版本。
听起来它们在同一个 yum 存储库中。你不应该。您应该将一个发布到 CentOS6 存储库,将另一个发布到 CentOS7 存储库。否则,yum
正在比较它们并在比较发布标签时决定 7 > 6,因此这是最新的可用包。
el6
(又名 "dist tag")作为版本的后缀方便用户使用,不是 RPM 可以select直接上。
同意显然 OP 将两个 RPM 放在同一个存储库中,@aaron-d-marasco 忽略了一些细节:
el6
标签不是 "convenience to the user" 而是打包者的变通方法。如果您检查软件包的元信息,您可能会注意到提供的软件包中的
.el6
(或.el7
)是 附加的 到 release 标签,例如,对于zip-3.0-10.el7.x86_64
,您可能会看到类似这样的内容:Name : zip
Version : 3.0
Release : 10.el7
Architecture: x86_64
RPM 选择规则将 whole 标签用于 version 和 release 对于每个指定的 name。
- 提到的 dist 标签与 release 标签的其余部分一起排序
- 解决方法是因为在模式中没有单独的元信息用于分发,但包装商希望跟踪这一点。
- 因为 release 标签是 "owned" 由打包者(和 version 由上游开发),然后打包者决定如何使用它来组织包——根据
yum
. 选择 RPM 的内置规则
进一步阅读: