Sådan rettes Yum-fejl: Databasediskbillede er forkert


I denne artikel vil vi kort beskrive YUM, YumDB, så årsagen til Yum Error: databasediskbillede er forkert, og hvordan man løser denne fejl.

RPM (RedHat Package Manager) baserede Linux-distributioner såsom Red Hat Enterprise Linux (RHEL), CentOS samt ældre versioner af Fedora Linux, for blot at nævne nogle få.

Det fungerer ligesom ny apt kommando; det kan bruges til at installere nye pakker, fjerne gamle pakker og forespørge installerede og/eller tilgængelige pakker. Det kan også bruges til at opdatere et system (sammen med afhængighedsopløsning og forældet behandling afhængigt af lagrede depotmetadata).

Bemærk: Denne guide antager, at du styrer dit system som root, ellers brug sudo-kommandoen uden at indtaste en adgangskode; vidste du det, okay, lad os fortsætte.

Kort forståelse af YumDB

Fra og med version 3.2.26 gemmer yum supplerende oplysninger om installerede pakker et sted uden for den generiske rpmdatabase; i en simpel fladfildatabase kaldet yumdb (/ var/lib/yum/yumdb /) - ikke en rigtig database.

# cd /var/lib/yum/yumdb
# ls 

Du kan tjekke et af underkatalogerne for at finde ud af mere om yumdb som følger.

# cd b
# ls

Selvom disse oplysninger ikke har stor betydning for yum-processer, er de meget nyttige for systemadministratorerne: de beskriver tydeligt den sammenhæng, hvori en pakke blev installeret på systemet.

Hvis du forsøgte at kigge igennem filerne (fra_repo, installed_by, releasever osv.) Vist i skærmbilledet ovenfor, ville du sandsynligvis ikke se noget vigtigt i dem.

For at få adgang til oplysningerne i dem skal du installere yum-utils, der indeholder et script kaldet yumdb - brug derefter dette script som forklaret nedenfor.

# yum install yum-utils 

Den følgende kommando får den repo, hvorfra httpd blev installeret.

# yumdb get from_repo httpd

For at definere en note om pakkerne httpd og mariadb skal du skrive.

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

Og for at vew alle yumdb-værdier vedrørende httpd og mariadb, skriv.

# yumdb info httpd mariadb

Fix Yum-fejl: databasediskbillede er forkert

Lejlighedsvis under installation af en pakke eller opdatering af dit system ved hjælp af YUM, kan du støde på fejlen: "databasediskbillede er forkert". Det kan skyldes en beskadiget yumdb: muligvis forårsaget af en hindring af "yum update" -processen eller pakkeinstallationen.

For at rette denne fejl skal du rense databasecache ved at køre kommandoen nedenfor.

# yum clean dbcache 

Hvis ovenstående kommando ikke fungerer (rette fejlen), skal du prøve at køre serien af kommandoer nedenfor.

# 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

Endelig skal du genopbygge dit systems RPM-database, for at det kan fungere.

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

Hvis du har fulgt ovenstående instruktioner godt, skal fejlen være løst nu. Prøv derefter at opdatere dit system som følger.

# yum update 

Du kan også tjekke disse vigtige artikler om yum og andre Linux-pakkehåndtere:

  1. Sådan bruges 'Yum History' til at finde ud af oplysninger om installerede eller fjernede pakker
  2. 27 'DNF' (Fork of Yum) kommandoer til RPM-pakkehåndtering i Linux
  3. Hvad er APT og Aptitude? og hvad er den virkelige forskel mellem dem?
  4. Sådan bruges 'apt-fast' til at fremskynde download af apt-get/apt-pakke ved hjælp af flere spejle

Har du spørgsmål eller ideer til at dele om dette emne, brug kommentarfeltet nedenfor til at gøre det.