Yum-virheen korjaaminen: Tietokannan levykuva on virheellinen


Tässä artikkelissa kuvataan lyhyesti YUM, YumDB, sitten Yum Error: tietokantalevyn kuva on virheellinen syy ja kuinka korjata tämä virhe.

YUM (Yellowdog Updater, Modified) on oletusarvoinen korkean tason työkalu Linux-pakettien hallintaan RPM- (RedHat Package Manager) -pohjaisissa Linux-jakeluissa, kuten Red Hat Enterprise Linuxissa (RHEL), CentOS:ssä sekä vanhemmissa Fedora Linuxin versioissa. mainitakseni vain muutamia.

Se toimii aivan kuten apt-get-komento tai suhteellisen uusi apt-komento; sitä voidaan käyttää uusien pakettien asentamiseen, vanhojen pakettien poistamiseen ja asennettujen ja/tai saatavilla olevien pakettien kyselyyn. Sitä voidaan käyttää myös järjestelmän päivittämiseen (yhdessä riippuvuusselvityksen ja vanhentuneen käsittelyn kanssa riippuen tallennettujen arkiston metatiedoista).

Huomaa: Tässä oppaassa oletetaan, että hallitset järjestelmääsi pääkäyttäjänä. Muussa tapauksessa suorita kaikki alla olevat komennot sudo-komennolla. Mielenkiintoista on, että voit myös suorittaa sudo-komennon ilman salasanaa; tiesitkö sen, okei, jatketaan.

Lyhyt käsitys YumDB:stä

Versiosta 3.2.26 alkaen yum tallentaa lisätietoa asennetuista paketeista yleisen rpm-tietokannan ulkopuolelle; yksinkertaisessa kiinteässä tiedostotietokannassa nimeltä yumdb (/var/lib/yum/yumdb/) – ei todellinen tietokanta.

cd /var/lib/yum/yumdb
ls 

Voit tutustua yhteen alihakemistoista saadaksesi lisätietoja yumdb:stä seuraavasti.

cd b
ls

Vaikka tällä tiedolla ei ole suurta merkitystä yum-prosesseille, se on erittäin hyödyllinen järjestelmänvalvojille: se kuvaa selkeästi kontekstin, jossa paketti asennettiin järjestelmään.

Jos yritit selata yllä olevassa kuvakaappauksessa olevia tiedostoja (from_repo, installed_by, releasever jne.), et todennäköisesti näe mitään tärkeitä niissä.

Jotta pääset käsiksi niiden sisältämiin tietoihin, sinun on asennettava yum-utils, joka tarjoaa yumdb-nimisen skriptin. Käytä sitten tätä komentosarjaa alla kuvatulla tavalla.

yum install yum-utils 

Seuraava komento hakee repo, josta httpd asennettiin.

yumdb get from_repo httpd

Voit määrittää huomautuksen paketeille httpd ja mariadb kirjoittamalla.

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

Ja nähdäksesi kaikki yumdb-arvot, jotka koskevat httpd- ja mariadb-arvoja, kirjoita.

yumdb info httpd mariadb

Korjaa Yum Error: tietokannan levykuva on virheellinen

Joskus paketin asennuksen tai järjestelmän päivityksen aikana YUM-sovelluksella saatat kohdata virheilmoituksen: "tietokannan levykuva on virheellinen". Se voi johtua viallisesta yumdb:stä: mahdollisesti "yum-päivitys" -prosessin tai paketin asennuksen esteestä.

Voit korjata tämän virheen puhdistamalla tietokannan välimuistin suorittamalla alla olevan komennon.

yum clean dbcache 

Jos yllä oleva komento ei toimi (korjaa virhe), yritä suorittaa alla olevat komentosarjat.

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

Lopuksi sinun on rakennettava uudelleen järjestelmän RPM-tietokanta, jotta se toimii.

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

Jos olet noudattanut yllä olevia ohjeita hyvin, virheen pitäisi olla korjattu tähän mennessä. Yritä sitten päivittää järjestelmäsi seuraavasti.

yum update 

Voit myös tutustua näihin tärkeisiin yumiin ja muihin Linux-pakettien hallintaohjelmiin liittyviin artikkeleihin:

  1. Kuinka käyttää "Yum-historiaa" asennettujen tai poistettujen pakettien tietojen selvittämiseen
  2. 27 "DNF" (Fork of Yum) -komennot RPM-pakettien hallintaan Linuxissa
  3. Mikä on APT ja Aptitude? ja mitä eroa niillä on?
  4. Kuinka käyttää 'apt-fast'ia nopeuttaaksesi apt-get/apt-pakettien latauksia useiden peilien avulla

Jos sinulla on kysyttävää tai ideoita jaettavaksi tästä aiheesta, käytä alla olevaa kommenttiosaa tehdäksesi sen.