Vyhledávání na webu

Jak opravit chybu Yum: Obraz disku databáze je chybně vytvořen


V tomto článku stručně popíšeme YUM, YumDB, dále příčinu Chyba Yum: obraz disku databáze je chybný a jak to opravit chyba.

YUM (Yellowdog Updater, Modified) je výchozí nástroj na vysoké úrovni pro správu linuxových balíčků na linuxových distribucích založených na RPM (RedHat Package Manager), jako je Red Hat Enterprise Linux (RHEL), CentOS a také starší verze Fedora Linux, jen abych zmínil jen několik.

Funguje stejně jako příkaz apt-get nebo relativně nový příkaz apt; lze jej použít k instalaci nových balíčků, odstranění starých balíčků a dotazování na instalované a/nebo dostupné balíčky. Může být také použit k aktualizaci systému (společně s rozlišením závislostí a zastaralým zpracováním v závislosti na uložených metadatech úložiště).

Poznámka: Tato příručka předpokládá, že svůj systém ovládáte jako root, jinak použijte příkaz sudo ke spuštění všech níže uvedených příkazů. Zajímavé je, že můžete také spustit příkaz sudo bez zadání hesla; věděli jste to, dobře, pokračujme.

Stručné porozumění YumDB

Počínaje verzí 3.2.26 yum ukládá doplňkové informace týkající se nainstalovaných balíčků v umístění mimo obecnou databázi rpm; v jednoduché databázi plochých souborů nazvané yumdb (/var/lib/yum/yumdb/) – není to skutečná databáze.

cd /var/lib/yum/yumdb
ls 

Můžete se podívat do jednoho z podadresářů a zjistit více o yumdb následovně.

cd b
ls

Ačkoli tyto informace nemají pro procesy yum velký význam, jsou velmi užitečné pro systémové administrátory: jasně popisují kontext, ve kterém byl balíček nainstalován do systému.

Pokud byste se pokusili procházet soubory (from_repo, installed_by, releasever atd..) zobrazené na snímku obrazovky výše, pravděpodobně byste nic neviděli v nich důležité.

Chcete-li získat přístup k informacím v nich, musíte nainstalovat yum-utils, který poskytuje skript nazvaný yumdb – poté použijte tento skript, jak je vysvětleno níže.

yum install yum-utils 

Následující příkaz získá repo, ze kterého byl nainstalován httpd.

yumdb get from_repo httpd

Chcete-li definovat poznámku k balíčkům httpd a mariadb, napište.

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

A chcete-li zobrazit všechny hodnoty yumdb týkající se httpd a mariadb, napište.

yumdb info httpd mariadb

Fix Yum Error: Obraz disku databáze je chybný

Občas se při instalaci balíčku nebo aktualizaci systému pomocí YUM můžete setkat s chybou: „obraz disku databáze je poškozen “. Může to být důsledkem poškozené yumdb: pravděpodobně způsobené překážkou procesu „yum update “ nebo instalace balíčku.

Chcete-li tuto chybu opravit, musíte vyčistit mezipaměť databáze spuštěním příkazu níže.

yum clean dbcache 

Pokud výše uvedený příkaz nefunguje (opravte chybu), zkuste spustit sérii příkazů níže.

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

Nakonec musíte znovu sestavit databázi RPM vašeho systému, aby fungovala.

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

Pokud jste dobře dodrželi výše uvedené pokyny, chyba by již měla být vyřešena. Poté zkuste aktualizovat svůj systém následovně.

yum update 

Můžete se také podívat na tyto důležité články týkající se yum a dalších správců balíčků Linuxu:

  1. Jak používat „Historie Yum“ ke zjištění informací o nainstalovaných nebo odebraných balíčcích
  2. 27 Příkazy „DNF“ (Fork of Yum) pro správu balíčků RPM v systému Linux
  3. Co je APT a Aptitude? a jaký je mezi nimi skutečný rozdíl?
  4. Jak používat „apt-fast“ ke zrychlení stahování balíčků apt-get/apt pomocí více zrcadel

Máte nějaké dotazy nebo nápady, které byste k tomuto tématu mohli sdílet, použijte k tomu sekci komentářů níže.