BisaCloud
almalinux

Cara Rebuild RPM Database

BisaCloud Team
April 9, 2026
Cara Rebuild RPM Database

RPM Database mendukung dua backend database, yaitu SQLite dan NDB. Untuk mengetahui backend yang digunakan sistem, jalankan:

rpm -E "%{_db_backend}"

Secara umum, lokasi database ada di direktori:

/var/lib/rpm

Dengan nama file:

  • Backend SQLite: rpmdb.sqlite
  • Backend NDB: Packages.db

Kerusakan pada RPM Database bisa terjadi karena instalasi paket yang tidak selesai, software pihak ketiga, atau penghapusan file/konten RPM secara manual. Jika database corrupt, maka perintah seperti yum, dnf, atau rpm tidak akan berfungsi dengan baik, termasuk saat melakukan instalasi, update, maupun penghapusan paket.

Berikut langkah-langkah untuk memperbaiki atau merekonstruksi RPM Database yang rusak.

1. Backup RPM Database

Selalu lakukan backup sebelum melakukan perbaikan:

mkdir -p /backups tar -zcvf /backups/rpmdb-$(date +"%d%m%Y").tar.gz /var/lib/rpm

2. Verifikasi Integritas Database

Hapus file cache database (__db*) kemudian verifikasi file Packages:

cd /var/lib/rpm rm -f __db* /usr/lib/rpm/rpmdb_verify /var/lib/rpm/Packages

3. Dump dan Reload Database (Jika Terdapat Error)

Jika verifikasi menemukan error, lakukan dump dan load ulang:

mv Packages Packages.orig /usr/lib/rpm/rpmdb_dump Packages.orig | /usr/lib/rpm/rpmdb_load Packages

4. Verifikasi dengan Query Paket

Pastikan database dapat dibaca dengan menampilkan daftar paket:

rpm -qa

5. Rebuild RPM Database

Terakhir, rebuild indeks database untuk memastikan konsistensi penuh:

rpm -vv --rebuilddb

Related Articles

Tags
#centos#almalinux#linux