Cara Memperbaiki Kesalahan Yum: Gambar Disk Basis Data Rusak


Pada artikel ini akan dijelaskan secara singkat YUM, YumDB, lalu penyebab Yum Error: database disk image is malformed dan cara memperbaikinya kesalahan.

YUM (Yellowdog Updater, Modified) adalah alat default tingkat tinggi untuk manajemen paket Linux pada distribusi Linux berbasis RPM (RedHat Package Manager) seperti Red Hat Enterprise Linux (RHEL), CentOS serta versi lama Fedora Linux, hanya untuk menyebutkan beberapa saja.

Ia bekerja seperti perintah apt-get atau perintah apt yang relatif baru; ini dapat digunakan untuk menginstal paket baru, menghapus paket lama dan menanyakan paket yang diinstal dan/atau paket yang tersedia. Ini juga dapat digunakan untuk memperbarui sistem (bersama dengan resolusi ketergantungan dan pemrosesan yang usang tergantung pada metadata repositori yang disimpan).

Catatan: Panduan ini akan mengasumsikan Anda mengendalikan sistem Anda sebagai root, jika tidak, gunakan perintah sudo untuk menjalankan semua perintah di bawah ini. Menariknya, Anda juga bisa menjalankan perintah sudo tanpa memasukkan kata sandi; tahukah kamu, oke, mari kita lanjutkan.

Pemahaman Singkat tentang YumDB

Mulai dari versi 3.2.26, yum menyimpan informasi tambahan mengenai paket yang diinstal di lokasi di luar database rpm generik; dalam database file datar sederhana bernama yumdb (/var/lib/yum/yumdb/) – bukan database sebenarnya.

cd /var/lib/yum/yumdb
ls 

Anda dapat memeriksa salah satu subdirektori untuk mengetahui lebih lanjut tentang yumdb sebagai berikut.

cd b
ls

Meskipun informasi ini tidak terlalu penting bagi proses yum, informasi ini sangat berguna bagi administrator sistem: informasi ini dengan jelas menggambarkan konteks di mana sebuah paket diinstal pada sistem.

Jika Anda mencoba mencari file (from_repo, installed_by, releasever dll..) yang ditampilkan pada cuplikan layar di atas, Anda mungkin tidak akan melihat apa pun penting di dalamnya.

Untuk mengakses informasi di dalamnya, Anda harus menginstal yum-utils yang menyediakan skrip bernama yumdb – kemudian gunakan skrip ini seperti yang dijelaskan di bawah.

yum install yum-utils 

Perintah berikut akan mengambil repo dari mana httpd diinstal.

yumdb get from_repo httpd

Untuk menentukan catatan pada paket httpd dan mariadb, ketik.

yumdb set note "installed by aaronkilik to setup LAMP" httpd mariadb

Dan untuk melihat semua nilai yumdb mengenai httpd dan mariadb, ketik.

yumdb info httpd mariadb

Perbaiki Kesalahan Yum: image disk database salah format

Kadang-kadang saat menginstal paket atau memperbarui sistem Anda menggunakan YUM, Anda mungkin mengalami kesalahan: “database disk image is malformed ”. Ini mungkin disebabkan oleh yumdb yang rusak: mungkin disebabkan oleh terhambatnya proses “yum update ” atau instalasi paket.

Untuk memperbaiki kesalahan ini, Anda perlu membersihkan cache database dengan menjalankan perintah di bawah ini.

yum clean dbcache 

Jika perintah di atas gagal berfungsi (memperbaiki kesalahan), coba jalankan rangkaian perintah di bawah ini.

yum clean all			#delete entries in /var/cache/yum/ directory.
yum clean metadata		#clear XML metadeta		
yum clean dbcache		#clear the cached files for database
yum makecache		        #make cache

Terakhir, Anda harus membangun kembali database RPM sistem Anda agar dapat berfungsi.

mv /var/lib/rpm/__db* /tmp
rpm --rebuilddb

Jika Anda telah mengikuti petunjuk di atas dengan baik, maka kesalahan tersebut seharusnya sudah teratasi sekarang. Kemudian coba perbarui sistem Anda sebagai berikut.

yum update 

Anda juga dapat membaca artikel penting berikut mengenai yum dan pengelola paket Linux lainnya:

  1. Cara Menggunakan 'Yum History' untuk Mengetahui Info Paket yang Diinstal atau Dihapus
  2. 27 Perintah 'DNF' (Fork of Yum) untuk Manajemen Paket RPM di Linux
  3. Apa itu APT dan Aptitude? dan Apa Perbedaan Sebenarnya di Antara Mereka?
  4. Cara Menggunakan 'apt-fast' untuk Mempercepat Pengunduhan Paket apt-get/apt Menggunakan Banyak Mirror

Apakah Anda memiliki pertanyaan atau ide untuk dibagikan mengenai topik ini, gunakan bagian komentar di bawah untuk melakukannya.