centos7下yum安装软件总是失败怎么办

问题:

centos7 yum安装软件失败:cannot open Packages database in /var/lib/rpm

Error: rpmdb open failed[root@cdhslave ~]# yum install ppp
error: rpmdb: BDB0113 Thread/process 26877/139823268095808 failed: BDB1507 Thread died in Berkeley DB library
error: db5 error(-30973) from dbenv->failchk: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery
error: cannot open Packages index using db5 -  (-30973)error: cannot open Packages database in /var/lib/rpm
CRITICAL:yum.main:

原因分析:

yum安装软件失败,多半是rpm本地数据库损坏导致的。

(推荐教程:centos教程)

解决方法:

1、进入rpmdb所在目录

[root@www~]# cd /var/lib/rpm      # rpmdb所在目录

2、列出相关rpmdb文件

[root@www rpm]# ls | grep 'db.'   # 列出相关rpmdb文件
   __db.001
   __db.002
   __db.003
   __db.004

3、将原rpmdb文件都更名为结尾带.bak的文件

[root@www rpm]# for i in $(ls | grep 'db.');do mv $i $i.bak;done   # 将原rpmdb文件都更名为结尾带.bak的文件

或者

4、重建rpm数据库

[root@www rpm]# rm -f __db.*     # 清除原rpmdb文件   
[root@www rpm]# rpm --rebuilddb     # 重建rpm数据库   
[root@www rpm]# yum clean all     # 清除所有yum的缓存

相关视频教程推荐:linux视频教程