Gestern habe ich begonnen, einige Dienste auf Amazon Linux 2, betrieben von Amazon Web Services Cloud, zu testen. Aus irgendeinem Grund ist mein Paketmanager yum kaputt und als ich begann, meine yum-Datenbank zu aktualisieren, erhielt ich einen Fehler uber rpmdb open failed. Du kannst meinen Fehler unten sehen. Wenn du auf Centos7 oder einer anderen Linux-Distribution laufst, die yum als Paketmanager verwendet, kannst du auch weiterlesen.

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

Ich beschloss, alle rpm-Datenbankpakete in das /tmp-Verzeichnis zu verschieben.

sudo mv /var/lib/rpm/__db* /tmp

Nach dieser Verschiebung sollte yum vollstandig sauber sein. Ich fuhre "yum clean all" aus, um meine yum-Datenbank zu bereinigen.

sudo yum clean all

Nach dem Bereinigungsprozess sagte mir yum, dass die Bereinigung abgeschlossen ist.

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

Ich druckte die Daumen und versuchte, meine yum-Datenbank mit den neuesten Versionen der Pakete zu aktualisieren. Dafur fuhre ich den Befehl "sudo yum update" aus.

sudo yum update

Jetzt lauft yum wieder einwandfrei!

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 update

Wenn du rpmdb-Probleme mit deinem yum hast, kannst du einfach die gleichen Schritte befolgen und deinen Paketmanager in einer Minute reparieren.