关于用yum update 更新时出现Warning: RPMDB altered outside of yum.错误解决方法

yum update

Found 9 pre-existing rpmdb problem(s), 'yum check' output follows:
7:device-mapper-1.02.135-1.el7_3.4.x86_64 has missing requires of device-mapper-libs = ('7', '1.02.135', '1.el7_3.4')
7:device-mapper-1.02.135-1.el7_3.5.x86_64 is a duplicate with 7:device-mapper-1.02.135-1.el7_3.4.x86_64
7:device-mapper-event-1.02.135-1.el7_3.4.x86_64 has missing requires of device-mapper-event-libs = ('7', '1.02.135', '1.el7_3.4')
7:device-mapper-event-1.02.135-1.el7_3.5.x86_64 is a duplicate with 7:device-mapper-event-1.02.135-1.el7_3.4.x86_64
gawk-4.0.2-4.el7_3.1.x86_64 is a duplicate with gawk-4.0.2-4.el7.x86_64
glibc-devel-2.17-157.el7_3.5.x86_64 has missing requires of glibc-headers = ('0', '2.17', '157.el7_3.5')
7:lvm2-2.02.166-1.el7_3.4.x86_64 has missing requires of lvm2-libs = ('7', '2.02.166', '1.el7_3.4')

该错误是yum执行check时发现错误,然后就不能正常更新了,

一般可以用

yum update --skip-broken

跳过问题包,更新其它包

遇到这种问题,我们一般用

yum remove

卸载然后重新安装来解决,但有些比较底层的包,会检查依赖后提示:你是想卸载系统吗?然后就失败了。

事实上,观察发现,这种问题是上一次更新中断所致,相当于安装了新版本,但没有删除旧版本

rpm -e --nodeps

删除低版本的包就可以了

更新于:2017-11-21