Linux下使用yum安装软件包是,有时会提示已安装的依赖包比需要的包版本更高,yum安装软件时有类似下面的提示:
--> Finished Dependency ResolutionError: Package: libkadm5-1.15.1-50.el7.x86_64 (base) Requires: krb5-libs(x86-64) = 1.15.1-50.el7 Installed: krb5-libs-1.15.1-54.el7_9.x86_64 (@updates) krb5-libs(x86-64) = 1.15.1-54.el7_9 Available: krb5-libs-1.15.1-50.el7.x86_64 (base) krb5-libs(x86-64) = 1.15.1-50.el7Error: Package: krb5-devel-1.15.1-50.el7.x86_64 (base) Requires: krb5-libs(x86-64) = 1.15.1-50.el7 Installed: krb5-libs-1.15.1-54.el7_9.x86_64 (@updates) krb5-libs(x86-64) = 1.15.1-54.el7_9 Available: krb5-libs-1.15.1-50.el7.x86_64 (base) krb5-libs(x86-64) = 1.15.1-50.el7Error: Package: glibc-2.17-317.el7.i686 (base) Requires: glibc-common = 2.17-317.el7 Installed: glibc-common-2.17-326.el7_9.x86_64 (@updates) glibc-common = 2.17-326.el7_9 Available: glibc-common-2.17-317.el7.x86_64 (base) glibc-common = 2.17-317.el7Error: Package: 1:openssl-devel-1.0.2k-19.el7.x86_64 (base) Requires: openssl-libs(x86-64) = 1:1.0.2k-19.el7 Installed: 1:openssl-libs-1.0.2k-25.el7_9.x86_64 (@updates) openssl-libs(x86-64) = 1:1.0.2k-25.el7_9 Available: 1:openssl-libs-1.0.2k-19.el7.x86_64 (base) openssl-libs(x86-64) = 1:1.0.2k-19.el7 You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest
其实就是带(@updates)标志的是通过系统更新,打了更新补丁后,导致版本过高了,只要删除更新包就可以了,有2个方式可以解决:
1、yum downgrade尝试降级相关的包,比如:yum downgrade krb5-libs krb5-devel openssl-libs openssl glibc glibc-common glibc-devel glibc-headers nscd libxml2 libxml2-devel libxml2-python
或者
2、将安装的软件包同步到最新的可用版本yum distribution-synchronization