CentOS 使用 yum 安装软件时提示“Error: rpmdb open failed”的解决方法

已关闭留言

今天想在 VirMach VPS 上装点东西,奈何内存太小,发现基本装不了什么东西。装的时候遇到了一个问题,提示“Error: rpmdb open failed”,感觉可能会有人也遇到,于是在此做个记录。

文章目录
隐藏
一、问题描述
二、解决方法

一、问题描述

在 CentOS 系统上,在使用 yum 命令安装软件包时候报错:

rpmdb: Thread/process 6539/140448388269824 failed: Thread died in Berkeley DB library
error: db3 error(-30974) from dbenv->failchk: DB_RUNRECOVERY: Fatal error, run database recovery
error: cannot open Packages index using db3 -  (-30974)
error: cannot open Packages database in /var/lib/rpm
CRITICAL:yum.main:

二、解决方法

原因是 RPM 数据库被破坏,重建数据库后恢复正常:

cd /var/lib/rpm/
for i in `ls | grep 'db.'`;do mv $i $i.bak;done
rpm --rebuilddb
yum clean all

参考:https://blog.51cto.com/alsww/1742134