最近发生了一件非常蛋疼的事情,yum升级服务器呢,结果断网了,然后yum就反复报错,经过各种谷··········歌终于在某个不知名的小角落找到正确的解决办法。
先看看我的报错(PS:这已经是修复过一个的了,应该是24个)

** 发现 23 个已存在的 RPM 数据库问题, ‘yum check’ 输出如下:
就上面这句话,我搜了十几篇文章都是一个套路,但是这个套路根本不好使,正确的方法如下:
1、安装yum-complete-transaction
# yum install yum-utils
2、运行yum-complete-transaction
# yum-complete-transaction –cleanup-only
3、清除重复的包
# package-cleanup –dupes
4、清除损坏的包
# package-cleanup –problems
5、再一次的更新
yum update
如果还不好,那就继续往下看
6、删除多余的包(这才是解决问题的最终办法)
按照报错的提示,删除报错后面的那个副本
# yum remove NetworkManager-1.18.0-5.el7_7.2.x86_64 NetworkManager-glib-1.18.0-5.el7_7.2.x86_64 NetworkManager-libnm-1.18.0-5.el7_7.2.x86_64 avahi-0.6.31-19.el7.x86_64 avahi-glib-0.6.31-19.el7.x86_64 avahi-libs-0.6.31-19.el7.x86_64 cryptsetup-libs-2.0.3-5.el7.x86_64 daxctl-libs-64.1-2.el7.x86_64 kernel-headers-3.10.0-1062.18.1.el7.x86_64 kernel-tools-3.10.0-1062.18.1.el7.x86_64 kernel-tools-libs-3.10.0-1062.18.1.el7.x86_64 libblockdev-utils-2.18-4.el7.x86_64 libreport-2.1.11-43.el7.centos.x86_64 libreport-filesystem-2.1.11-43.el7.centos.x86_64 libreport-python-2.1.11-43.el7.centos.x86_64 libreport-web-2.1.11-43.el7.centos.x86_64 python-2.7.5-86.el7.x86_64 python-libs-2.7.5-86.el7.x86_64 python3-3.6.8-10.el7.x86_64 python3-libs-3.6.8-10.el7.x86_64 systemtap-devel-4.0-10.el7_7.x86_64 systemtap-client-4.0-10.el7_7.x86_64 systemtap-runtime-4.0-10.el7_7.x86_64

直接按y执行就行


7、重新update
再一次的执行update命令,将所有的软件包都装上
# yum update


8、验证是否恢复

总结一下:
最重要的一步就是第6步,搞定了这一步就OK了,有时候犄角旮旯才有好东东,就跟小吃一样,犄角旮旯的小吃才最美味