Wiadomość napisana przez Paweł A. Gajda <m...@pld-linux.org> w dniu 30 sty 
2016, o godz. 00:27:
> Jestem całkiem pewny, ze rpmdbcache nie jest potrzebny, jest generowany z
> bazy rpm-a. Co więcej odtworzenie go jest rozwiązaniem na krótką metę - np.
> po użyciu vrpma (poza poldkiem) do (de)instalacji, poldek będzie próbował
> go zregenerować.

… i jak u rabina: miałeś rację i nie miałeś :)
cache nie jest potrzebny, ale jest potrzebny gdy jest coś nie tak z bazą.

> Jeżeli jednak się upierasz że jest, to:
> 
> $ mkdir /tmp/var/lib/rpm
> $ cp  /vservers/.pkg/ko-python/rpm/state/* /tmp/var/lib/rpm
> $ poldek --root /tmp --cachedir /tmp/foo -s /tmp

i to mnie naprowadziło, bo znowu miałem tak:

błąd: open /tmp/packages.ndir.md: Nie ma takiego pliku ani katalogu
powiadomienie: próbuję odczytać katalog /tmp/...
Wczytywanie [dir]/tmp/...
uwaga: nie załadowano żadnych pakietów
błąd: nie można otworzyć indeksu Packages(0): Nie ma takiego pliku ani 
katalogu(2)
        DB: Berkeley DB 5.2.42: (February 29, 2012)
błąd: //tmp/var/lib/rpm: nie można otworzyć rpmowej bazy
Przerwane

NO BEZ JAJ

Odpaliłem ze strace i szukam tego Packages… TU CIĘ MAM!

open("/vservers/lo-python/.rpmdb/Packages", O_RDONLY) = -1 ENOENT (No such file 
or directory)

Kiedyś ta wirtualka nazywała się lo-python…
No to szybko:

root@juliett /tmp/var/lib/rpm> grep -l lo-python *
__db.001
__db.003

I wszystko jasne.
Wystarczyło:
rm /vservers/.pkg/ko-python/rpm/state/__db*
rpm --dbpath /vservers/.pkg/ko-python/rpm/state —rebuilddb

i już wystarczyło odpalić vpoldek ko-python. Lista pakietów jest prawidłowa, 
wszystko bangla, cache odbudowany :)

Czyli dziwne jest tylko to, że rpm -qa potrafił pokazać listę pakietów, ale już 
cokolwiek innego korzystało z __db.00[13] i
zaczynało szukać pliku Packages gdzieś w pigułach.

Dzięki za naprowadzenie!

Pozdrawiam,
-- 
Jacek Osiecki
josie...@silvercube.pl

Silvercube s.c.
ul. Makuszynskiego 4
31-752 Kraków
+48 (12) 684 21 00



_______________________________________________
pld-devel-pl mailing list
pld-devel-pl@lists.pld-linux.org
http://lists.pld-linux.org/mailman/listinfo/pld-devel-pl

Odpowiedź listem elektroniczym