rpmdbが壊れた!ので、リカバリしました。
状況
dnfコマンドでインストール中にOSがハングしたため、強制再起動を実施。実施した後、rpmコマンドを実施すると以下のエラーが発生。どうやらrpmdbが壊れてしまった模様。
# rpm -qa
error: rpmdb: BDB0113 Thread/process 25745/139809523972992 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 25745/139809523972992 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
検証環境
AWS EC2で構築した以下の環境です。
# cat /etc/redhat-release
Red Hat Enterprise Linux release 8.6 (Ootpa)
# rpm --version
RPM version 4.14.3
復旧
rpmコマンドで–rebuilddbオプションを付けると復旧します。
# rpm --rebuilddb
# rpm -qa | head
trousers-lib-0.3.15-1.el8.x86_64
dracut-config-rescue-049-203.git20220511.el8_6.x86_64
xkeyboard-config-2.28-1.el8.noarch
systemd-239-58.el8_6.10.x86_64
libnghttp2-1.33.0-3.el8_2.1.x86_64
mysql-common-8.0.32-1.module+el8.8.0+18446+fca6280e.x86_64
crontabs-1.11-17.20190603git.el8.noarch
gawk-4.2.1-4.el8.x86_64
initscripts-10.00.17-1.el8_6.2.x86_64
npth-1.5-4.el8.x86_64
rpmコマンド打てるようになりました。
コメント