[Th]error: cannot open Packages(0) index: Invalid argument(22) - da się to naprawić?

Jan Rękorajski baggins w pld-linux.org
Wto, 4 Gru 2012, 18:36:02 CET


On Tue, 04 Dec 2012, Mateusz Korniak wrote:

> Jakieś sugestie jak naprawić poniższy problem?
> 
> Po instalacji pakietow gdy zabrakło miejsca na / zostałem z:
> 
> [root w laptop-hp rpm]# rpm -q  rpm
> rpmdb: BDB2506 file /var/lib/rpm/Packages has LSN 10/7040634, past end of log 
> at 1/64
> rpmdb: BDB2507 Commonly caused by moving a database from one database 
> environment
> rpmdb: BDB2508 to another without clearing the database LSNs, or by removing 
> all of
> rpmdb: BDB2509 the log files from a database environment
> error: cannot open Packages(0) index: Invalid argument(22)
>         DB: Berkeley DB 5.3.21: (May 11, 2012)
> error: cannot open Packages database in /var/lib/rpm
> package rpm is not installed

rebuilddb Ci niewiele pomoże.
To co może pomóc to:

	cd /var/lib/rpm
	dbX.Y_recover -ev (tutaj X.Y = 5.3)

Jak nie pomoże recover to druga możliwość (zrób backup bazy przed tym):

	cd /var/lib/rpm
	<skasuj wszystko _oprócz_ Packages i DB_CONFIG, nie kasuj katalogu log/ a tylko jego zawartość>
	dbX.Y_open -r lsn Packages
	rpm --rebuilddb

Podejrzewam że w drugim przypadku może się okazać że baza rozeszła się
ze stanem faktycznym, rpm -Va powie czy tak się stało.

-- 
Jan Rękorajski                                 | PLD/Linux
SysAdm                                         | http://www.pld-linux.org/
baggins<at>mimuw.edu.pl
baggins<at>pld-linux.org


Więcej informacji o liście pld-users-pl