問題描述
錯誤:rpmdb: BDB0113 Thread/process 12846/139645757323072 failed: BDB1507 Thread died in Berkeley DB library
錯誤:db5 錯誤(-30973) 來自 dbenv->failchk:BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery
錯誤:無法使用 db5 - (-30973) 打開 Packages 索引
錯誤:無法從 /var/lib/rpm 打開軟件包數據庫
CRITICAL:yum.main:
Error: rpmdb open failed
或者
rpmdb: /var/lib/rpm/__db.003: No such file or directory
error: db3 error(2) from dbenv->open: No such file or directory
Segmentation fault
問題分析
這多半是因爲rpm數據庫出現損壞所致,此錯誤可能導致多數(甚至是所有的)rpm軟件的升級、安裝甚至是刪除都會出現問題。
解決方案
[root@www~]# cd /var/lib/rpm # rpmdb所在目錄
[root@www rpm]# ls | grep ‘db.‘ # 列出相關rpmdb文件
__db.001
__db.002
__db.003
__db.004
[root@www rpm]# for i in $(ls | grep ‘db.‘);do mv $i $i.bak;done # 將原rpmdb文件都更名爲結尾帶.bak的文件
或者
[root@www rpm]# rm -f __db.* # 清除原rpmdb文件
[root@www rpm]# rpm --rebuilddb # 重建rpm數據庫
[root@www rpm]# yum clean all # 清除所有yum的緩存
參考文章
https://www.jianshu.com/p/c531e28de195
https://www.cnblogs.com/liutao97/p/7816788.html
https://blog.csdn.net/liyinwang/article/details/70048346