GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Mengatasi Kesalahan "Kesalahan:rpmdb buka gagal" Di CentOS

Hari ini, saya sedang menguji server web Nginx di CentOS 7 VM. Sayangnya, listrik padam di tengah proses pembaruan. Karena saya tidak memiliki UPS, sistem host saya langsung mati. Setelah beberapa menit, listrik datang, dan saya menyalakan VM lagi dan memulai proses peningkatan. Ketika saya menjalankan perintah "yum update", saya mendapat pesan kesalahan ini:

error: rpmdb: BDB0113 Thread/process 2196/139984719730496 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

Sepertinya YUM rusak. Saya tidak dapat menjalankan perintah yum apa pun. Saya belum pernah menghadapi kesalahan ini sebelumnya, dan saya tidak tahu harus berbuat apa. Jadi, saya menuju ke forum CentOS berharap menemukan solusi yang sesuai untuk memperbaiki masalah ini. Setelah beberapa pencarian di forum, untungnya saya menemukan solusi. Jika Anda pernah mengalami masalah ini, jangan mencari di mana pun dan lakukan saja langkah-langkah berikut.

Pertama-tama backup database rpm menggunakan perintah sebagai root user:

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

Kemudian, jalankan perintah berikut:

# yum clean all

Sekarang, jalankan pembaruan lagi:

# yum update
Loaded plugins: fastestmirror
Cleaning repos: base epel extras updates
Cleaning up everything
Cleaning up list of fastest mirrors
[[email protected] ~]# yum update
Loaded plugins: fastestmirror
base | 3.6 kB 00:00 
epel/x86_64/metalink | 5.0 kB 00:00 
epel | 4.3 kB 00:00 
extras | 3.4 kB 00:00 
updates | 3.4 kB 00:00 
(1/7): base/7/x86_64/group_gz | 155 kB 00:02 
(2/7): epel/x86_64/group_gz | 170 kB 00:04 
(3/7): extras/7/x86_64/primary_db | 191 kB 00:12 
(4/7): epel/x86_64/updateinfo | 809 kB 00:21 
(5/7): base/7/x86_64/primary_db | 5.6 MB 00:26 
(6/7): epel/x86_64/primary_db | 4.8 MB 00:46 
(7/7): updates/7/x86_64/primary_db | 7.8 MB 00:50 
Determining fastest mirrors
 * base: mirror.ehost.vn
 * epel: repo.ugm.ac.id
 * extras: mirror.ehost.vn
 * updates: mirror.dhakacom.com
Resolving Dependencies
--> Running transaction check
---> Package NetworkManager.x86_64 1:1.4.0-19.el7_3 will be updated
---> Package NetworkManager.x86_64 1:1.4.0-20.el7_3 will be an update
---> Package NetworkManager-adsl.x86_64 1:1.4.0-19.el7_3 will be updated
[...]
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package Arch Version Repository Size
================================================================================
Installing:
 kernel x86_64 3.10.0-514.26.2.el7 updates 37 M
 python2-libcomps x86_64 0.1.8-3.el7 epel 46 k
 replacing python-libcomps.x86_64 0.1.6-13.el7
Updating:
 NetworkManager x86_64 1:1.4.0-20.el7_3 updates 2.5 M
 NetworkManager-adsl x86_64 1:1.4.0-20.el7_3 updates 146 k
 NetworkManager-bluetooth x86_64 1:1.4.0-20.el7_3 updates 165 k
 NetworkManager-glib x86_64 1:1.4.0-20.el7_3 updates 385 k
 NetworkManager-libnm x86_64 1:1.4.0-20.el7_3 updates 443 k
 NetworkManager-team x86_64 1:1.4.0-20.el7_3 updates 147 k
 python-perf x86_64 3.10.0-514.26.2.el7 updates 4.0 M
 sudo x86_64 1.8.6p7-23.el7_3 updates 735 k
 systemd x86_64 219-30.el7_3.9 updates 5.2 M
 systemd-libs x86_64 219-30.el7_3.9 updates 369 k
 systemd-sysv x86_64 219-30.el7_3.9 updates 64 k
 tuned noarch 2.7.1-3.el7_3.2 updates 210 k
 xfsprogs x86_64 4.5.0-10.el7_3 updates 895 k
Removing:
 kernel x86_64 3.10.0-123.el7 @anaconda 127 M

Transaction Summary
================================================================================
Install 2 Packages
Upgrade 46 Packages
Remove 1 Package

Total download size: 84 M
Is this ok [y/d/N]: y

Saya mengetik y untuk melanjutkan pembaruan. Voila! Semuanya bekerja seperti yang diharapkan.

Terakhir, saya membersihkan cadangan menggunakan perintah:

# rm -i /tmp/__db*

Dan, itu saja untuk saat ini. Semoga membantu.

Bacaan terkait:

  • [Terpecahkan] - "kesalahan:rpmdbNextIterator:melewatkan" Di Fedora Linux

Cent OS
  1. Cara Memperbaiki "perintah semanage" Tidak Ditemukan Kesalahan di CentOS

  2. Cara Membuka port Http ( 80 ) di Iptables di CentOS

  3. Cara Menginstal Open Classifieds di CentOS 7

  1. Cara menghapus kernel lama yang tidak digunakan di CentOS Linux

  2. Cara menginstal VMware Workstation 8 di CentOS 6 / RHEL 6 (x86_64)

  3. Cara Mengatasi "kesalahan:gagal melakukan transaksi (file yang bertentangan)" Di Arch Linux

  1. Cara memutakhirkan git ke versi terbaru di CentOS

  2. Cara Membuka Port Di CentOS / RHEL 7

  3. Cara mengkonfigurasi IPtables untuk membuka Port di CentOS / RHEL