CentOSまたはAmazon Linux 2で「Error: rpmdb open failed」を修正する
yumでrpmdbの問題が発生している場合、同じ手順に従ってパッケージマネージャを1分で修正できる。

昨日、Amazon Web Servicesクラウドで動作するAmazon Linux 2上でいくつかのサービスをテストし始めた。何らかの理由でパッケージマネージャのyumが壊れており、yumデータベースを更新しようとしたところ、rpmdb open failedに関するエラーが発生した。以下がそのエラーだ。CentOS 7またはyumをパッケージマネージャとして使用する別のLinuxディストリビューションを実行している場合も、読み続けることができる。
error: rpmdb: BDB0113 Thread/process 18275/140171317404864 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:
Error: rpmdb open failed
すべてのrpmデータベースパッケージを/tmpディレクトリに移動することにした。
sudo mv /var/lib/rpm/__db* /tmpこの移動の後、yumは完全にクリーンになるはずだ。"yum clean all"を実行してyumデータベースをクリーンにする。
sudo yum clean allクリーニングプロセスの後、yumはクリーニングが完了したと表示した。
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
Repository elastic-7.x is listed more than once in the configuration
Bad id for repo: root@ip-11-12-30-149 yum.repos.d, byte = @ 4
Cleaning repos: amzn2-core amzn2extra-epel elastic-7.x epel treasuredata
Cleaning up everything
Maybe you want: rm -rf /var/cache/yum, to also free up space taken by orphaned data from disabled or removed repos指を交差させて、最新バージョンのパッケージでyumデータベースを更新しようと試みた。そのために"sudo yum update"コマンドを実行する。
sudo yum updateこれで、yumは再び完璧に動作している!
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
Repository elastic-7.x is listed more than once in the configuration
Bad id for repo: root@ip-11-12-30-149 yum.repos.d, byte = @ 4
amzn2-core | 2.4 kB 00:00:00
amzn2extra-epel | 1.3 kB 00:00:00
elastic-7.x | 1.3 kB 00:00:00
epel/x86_64/metalink | 21 kB 00:00:00
epel | 4.7 kB 00:00:00
treasuredata | 2.9 kB 00:00:00
(1/9): amzn2-core/2/x86_64/group_gz | 2.5 kB 00:00:00
(2/9): amzn2-core/2/x86_64/updateinfo | 200 kB 00:00:00
(3/9): amzn2extra-epel/2/x86_64/primary_db | 1.8 kB 00:00:00
(4/9): elastic-7.x/primary | 115 kB 00:00:00
(5/9): epel/x86_64/group_gz | 95 kB 00:00:00
(6/9): epel/x86_64/updateinfo | 1.0 MB 00:00:00
(7/9): epel/x86_64/primary_db | 6.8 MB 00:00:00
(8/9): amzn2-core/2/x86_64/primary_db | 39 MB 00:00:00
(9/9): treasuredata/2/x86_64/primary_db | 15 kB 00:00:00
elastic-7.x 315/315
192 packages excluded due to repository priority protections
No packages marked for updateyumでrpmdbの問題が発生している場合、同じ手順に従ってパッケージマネージャを1分で修正できる。
Ercan の他のサイト
同じ著者、別の領域のサイトが2つ。