转载说明:如果您喜欢这篇文章并打算转载它,请私信作者取得授权。感谢您喜爱本文,请文明转载,谢谢。
云服务器在安装了开源的HIDS插件后,发现安装了插件的服务器全部突然无法正常使用yum安装软件了。使用yum时报错如下:
error: rpmdb: BDB0113 Thread/process 22353/139652015102016 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
error: rpmdb: BDB0113 Thread/process 22353/139652015102016 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 database in /var/lib/rpm
后来经过定位排查,结论是使用的这哥开源的HIDS查看存在一些bug,安装到服务器之后,破坏了rpm数据库。在/var/lib/rpm目录下生成了3个以__db.开头的文件。
将这三个文件删除,然后重建rpm数据库后,yum即可回复正常使用。
[root@k8s-node1 tmp]# cd /var/lib/rpm
[root@k8s-node1 rpm]# ll
total 141160
-rw-r--r--. 1 root root 3289088 Apr 6 17:28 Basenames
-rw-r--r--. 1 root root 16384 Apr 6 17:28 Conflictname
-rw-r--r-- 1 root root 442368 Apr 25 11:16 __db.001 #删除
-rw-r--r-- 1 root root 106496 Apr 25 11:16 __db.002 #删除
-rw-r--r-- 1 root root 1318912 Apr 25 11:16 __db.003 #删除
-rw-r--r--. 1 root root 3182592 Apr 6 17:28 Dirnames
-rw-r--r--. 1 root root 16384 Apr 6 17:28 Group
-rw-r--r--. 1 root root 16384 Apr 6 17:28 Installtid
-rw-r--r--. 1 root root 24576 Apr 6 17:28 Name
-rw-r--r--. 1 root root 16384 Apr 6 17:22 Obsoletename
-rw-r--r--. 1 root root 133312512 Apr 6 17:28 Packages
-rw-r--r--. 1 root root 2600960 Apr 6 17:28 Providename
-rw-r--r--. 1 root root 176128 Apr 6 17:28 Requirename
-rw-r--r--. 1 root root 73728 Apr 6 17:28 Sha1header
-rw-r--r--. 1 root root 40960 Apr 6 17:28 Sigmd5
-rw-r--r--. 1 root root 8192 Apr 6 17:28 Triggername
[root@k8s-node1 rpm]#
删除后,重建rpm数据库:
[root@k8s-node1 rpm]# rpm --rebuilddb
问题yum使用恢复正常。
同时,最根本的是解决HIDS破坏rpm数据库的问题(略)