我在安装一些依赖包时遇到了一个问题。
我有两个yum repo,repo1和repo2都提供了一个依赖 例如,一个是 python-XXXXX ,另一个是 python2-XXXXX 他们有不同的版本信息
python-XXXXX是由自己构建的,它是1.5.0
。而另一个是默认的repo自己,它是2.6.0
安装上游软件包时,它将安装此依赖项。
上游需要< 1.6.0
所以我认为它会尝试找到较低的版本。
但是在安装过程中,我发现它似乎试图安装更高版本的版本。
[...] 包python-oslo-i18n已被python2-oslo-i18n淘汰,但过时的包不能满足要求 - >完成的依赖性解决方案
错误:包:python-oslo-messaging-1.8.3-1.noarch(repo1)
需要:python-oslo-i18n< 1.6.0
可用:python-oslo-i18n-1.5.0-2.noarch(repo1) python-oslo-i18n = 1.5.0-2
安装:python2-oslo-i18n-2.6.0-1.el7_1.1.noarch(repo2) python-oslo-i18n = 2.6.0-1.el7_1.1
我猜关键字Obsolete已在 python2-XXXXX 中定义,因此在安装过程中,它会尝试删除正确的关键字。 但我不明白为什么找不到正确的
有谁知道如何解决这个问题? 我可以通过禁用包含更高版本1的repo来解决。
但我后来仍然需要那个回购。
谢谢!
答案 0 :(得分:0)
Yum支持从存储库中排除单个包。在您正在进行更新的系统的yum配置中,尝试添加以下内容:
exclude=python*
将其添加到'repo2'的配置部分(可能在/etc/yum.repos.d/repo2中)