PLD Linux Forum Strona Główna PLD Linux Forum
Oficjalne forum dystrybucji PLD Linux

FAQFAQ  SzukajSzukaj  UżytkownicyUżytkownicy  GrupyGrupy
RejestracjaRejestracja  ZalogujZaloguj

Poprzedni temat «» Następny temat
problemy z db4.5 / db4.6 przy upgrade
Autor Wiadomość
pit 


Pomógł: 8 razy
Dołączył: 27 Lip 2005
Posty: 136
Skąd: Ostrów Wielkopolski
Wysłany: 4 Sierpień 2007, 15:48   

Witam po dłuugiej przerwie!
Mam podobny problem, to się dopiszę tutaj.
Zrobiłem (no prawie zrobiłem..) aktualizację z th-test jakiś już czas temu, niestety nie do końca przebiegłą pomyślnie. Podczas upgrade * w poldku:
Kod:
Uruchamianie rpm --upgrade -vh --root / --noorder...
Przygotowywanie...          ########################################### [100%]
Ponowne pakowanie...       
   1:rpm-lib                ########################################### [ 17%]
   2:rpm-base               ########################################### [ 33%]
   3:rpm                    ########################################### [ 50%]
   4:rpm-utils              ########################################### [ 67%]
   5:rpm-build              ########################################### [ 83%]
   6:rpm-build-tools        ########################################### [100%]
Uaktualnianie...           
   1:rpm-lib                ########################################### [ 17%]
   2:rpm-base               ########################################### [ 33%]
   3:rpm                    ########################################### [ 50%]
   4:rpm-utils              ########################################### [ 67%]
   5:rpm-build              ########################################### [ 83%]
   6:rpm-build-tools        ########################################### [100%]
Installing set #13
Przetwarzanie zależności...
xterm-227-1.i686 zostanie zastąpiony przez xterm-228-1.i686
There are 1 package to install, 1 to remove:
I xterm-228-1.i686
R xterm-227-1.i686
Potrzeba pobrać 276.5KB archiw (276.5KB do pobrania).
Po rozpakowaniu 700.6KB będzie użyte.
Pobieranie th-test::xterm-228-1.i686.rpm...
.............................. 100.0% [276.5K (39.5K/s)]                     
Uruchamianie rpm --upgrade -vh --root / --noorder...
rpmdb: Program version 4.6 doesn't match environment version 4.5
Przygotowywanie...          ########################################### [100%]
Ponowne pakowanie...       
   1:xterm                  ########################################### [100%]
Uaktualnianie...           
   1:xterm                  ########################################### [100%]
Installing set #14
rpmdb: Program version 4.5 doesn't match environment version 4.6
rpmdb: page 2: illegal page type or format
rpmdb: PANIC: Zły argument
rpmdb: /var/lib/rpm/Packages: pgin failed for page 2
błąd: błąd db4(-30975) z dbcursor->c_get: DB_RUNRECOVERY: Fatal error, run database recovery
rpmdb: PANIC: fatal region error detected; run recovery
błąd: błąd db4(-30975) z dbcursor->c_close: DB_RUNRECOVERY: Fatal error, run database recovery
Przetwarzanie zależności...
Installing set #15
rpmdb: PANIC: fatal region error detected; run recovery
błąd: błąd db4(-30975) z db->cursor: DB_RUNRECOVERY: Fatal error, run database recovery
.
.
.
.
(tutaj wciąż podobne komunikaty błedów)
.
.
.
.
.
rpmdb: PANIC: fatal region error detected; run recovery
błąd: błąd db4(-30975) z dbenv->close: DB_RUNRECOVERY: Fatal error, run database recovery
Wystąpiły błędy podczas instalacji
poldek:/all-avail> quit

Zapisywanie /root/tmp/packages.rpmdbcache.var.lib.rpm.gz...
-bash-3.2# poldek
Wczytywanie [pndir]th...
Wczytywanie [pndir]th...
Wczytywanie [pndir]th-updates-security...
Wczytywanie [pndir]th-updates-security...
Wczytywanie [pndir]th-updates-general...
Wczytywanie [pndir]th-updates-general...
Wczytywanie [pndir]th-ready...
Wczytywanie [pndir]th-ready...
Wczytywanie [pndir]th-test...
Wczytywanie [pndir]th-test...
Przeczytano 14669 pakietów
Wczytywanie [rpmdbcache]/var/lib/rpm...
Naruszenie ochrony pamięci
-bash-3.2# rm /var/lib/rpm
rpm/               rpmrebuilddb.3524/
-bash-3.2# rm /var/lib/rpm/
Basenames       __db.002        Dirnames        Installtid      Packages        Requirename     Sigmd5         
Conflictname    __db.003        Filedigests     Name            Providename     Requireversion  Triggername     
__db.001        __db.004        Group           Packagecolor    Provideversion  Sha1header     
-bash-3.2# rm /var/lib/rpm/__db.00*
-bash-3.2# rpm --rebuilddb
-bash-3.2# poldek
Wczytywanie [pndir]th...
Wczytywanie [pndir]th...
Wczytywanie [pndir]th-updates-security...
Wczytywanie [pndir]th-updates-security...
Wczytywanie [pndir]th-updates-general...
Wczytywanie [pndir]th-updates-general...
Wczytywanie [pndir]th-ready...
Wczytywanie [pndir]th-ready...
Wczytywanie [pndir]th-test...
Wczytywanie [pndir]th-test...
Przeczytano 14669 pakietów
Wczytywanie [rpmdbcache]/var/lib/rpm...
Naruszenie ochrony pamięci
-bash-3.2#   

Jak poldek zaczął sypać błędami, to pomyślałem sobie, że "pewnie skoro nowe rpm-* zainstalowane, to trzeba zrestartować poldka", tak też zrobiłem, ale jak widać wyżej - nic to nie dało. No to przebudowałem bazę rpm, ale nadal nic. Później jeszcze wpadłem na genialny pomysł, żeby zainstalować na siłę (via rpm --force) starsze wersje rpm-*, te które działały dobrze przed aktualizacją. Nie dało to nic, bo dopiero w tym wątku doczytałem, że chodzi o db4.5/4.6, a nie o samo rpm-*, no i teraz jest tak, że nie mogę odczytać, przebudować, ani kompletnie nic zrobić z bazą rpm.
Odpaliłem to z rescue cd, nie mogłem przebudować bazy przez rpm --root=/dest --rebuilddb, dostawałem błąd, że tymczasowa biblioteka /dest/var/lib/rpm już istnieje... przeniosłem nawet całe /dest/var/lib/rpm w inne miejsce - po tym nie było już błedu przy próbie --rebuilddb via chroot, ale nie dawało to też żadnego efektu - zostawał pusty katalog /dest/vat/lib/rpm.
Teraz odpaliłem ten system 'normalnie', no i z tym pustym katalogiem /var/lib/rpm poszło przebudowanie bazy. Niby poszło, bo:
Kod:
-bash-3.2# rpm --rebuilddb
-bash-3.2# rpm -qa
-bash-3.2# poldek
Wczytywanie [pndir]th...
Wczytywanie [pndir]th...
Wczytywanie [pndir]th-updates-security...
Wczytywanie [pndir]th-updates-security...
Wczytywanie [pndir]th-updates-general...
Wczytywanie [pndir]th-updates-general...
Wczytywanie [pndir]th-ready...
Wczytywanie [pndir]th-ready...
Przeczytano 13844 pakiety
Wczytywanie [rpmdbcache]/var/lib/rpm...
Przeczytano 436 pakietów

Witaj w poldkowym trybie interaktywnym. Wpisz "help" aby otrzymać pomoc.

poldek:/all-avail> upgrade -t 
arts-1.5.7-5.i686                       freetype-2.3.5-1.i686                   kdelibs-3.5.7-8.i686                    poldek-libs-0.21-0.20070703.00.3.i686
arts-qt-1.5.7-5.i686                    glibc-2.6.1-1.i686                      kdelibs-libs-3.5.7-8.i686               ruby-1.8.6-3.i686
binutils-2.17.50.0.18-1.i686            glibc-devel-2.6.1-1.i686                localedb-src-2.6.1-1.i686               vim-7.1.035-1.i686
binutils-libs-2.17.50.0.18-1.i686       glibc-devel-utils-2.6.1-1.i686          mozilla-firefox-2.0.0.6-1.i686          vim-rt-7.1.035-1.i686
boost-filesystem-1.34.1-1.i686          glibc-headers-2.6.1-1.i686              mozilla-firefox-lang-en-2.0.0.6-1.i686  xorg-driver-input-mouse-1.2.2-1.i686
boost-regex-1.34.1-1.i686               glibc-misc-2.6.1-1.i686                 mozilla-firefox-libs-2.0.0.6-1.i686     xorg-lib-libX11-1.1.3-1.i686
cyrus-sasl-2.1.22-10.i686               iconv-2.6.1-1.i686                      nscd-2.6.1-1.i686                       
dhcpcd-3.0.19-1.i686                    k3b-1.0.3-1.i686                        poldek-0.21-0.20070703.00.3.i686       
poldek:/all-avail> upgrade -t arts-1.5.7-5.i686
rpmdb: /var/lib/rpm/Name: unsupported hash version: 9
błąd: nie można otworzyć indeksu Name przy użyciu db3 - Zły argument (22)
Nie ma roboty
poldek:/all-avail>

Niby przebudował bazę, ale nie ma nic zainstalowanego? O czym nie wiem?
No i próbuję w takim razie odinstalować to nieszczęsne db4.6, o którym właśnie sobie przypomniałem:
Kod:
poldek:/all-avail> uninstall -t db4.               
db4.5-4.5.20-7.i686  db4.6-4.6.18-1.i686 
poldek:/all-avail> uninstall -t db4.6-4.6.18-1.i686
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
błąd: nie można otworzyć indeksu Providename przy użyciu db3 - Zły argument (22)
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
błąd: db4.6-4.6.18-1.i686: nie ma takiego pakietu
poldek:/all-avail> uninstall -t db4.5-4.5.20-7.i686
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
błąd: db4.5-4.5.20-7.i686: nie ma takiego pakietu
poldek:/all-avail>

No i nadal nic. No to:
Kod:
poldek:/all-avail> quit

-bash-3.2# rpm -Uvh /root/tmp/ftp_ftp.th.pld-linux.org.dists.th.PLD.i686.RPMS/db4.5-4.5.20-7.i686.rpm
rpmdb: /var/lib/rpm/Name: unsupported hash version: 9
błąd: nie można otworzyć indeksu Name przy użyciu db3 - Zły argument (22)
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
błąd: nie można otworzyć indeksu Providename przy użyciu db3 - Zły argument (22)
rpmdb: /var/lib/rpm/Basenames: unsupported hash version: 9
błąd: nie można otworzyć indeksu Basenames przy użyciu db3 - Zły argument (22)
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Basenames: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Basenames: unsupported hash version: 9
rpmdb: /var/lib/rpm/Providename: unsupported hash version: 9
rpmdb: /var/lib/rpm/Conflictname: unsupported hash version: 9
błąd: nie można otworzyć indeksu Conflictname przy użyciu db3 - Zły argument (22)
rpmdb: /var/lib/rpm/Conflictname: unsupported hash version: 9
rpmdb: /var/lib/rpm/Conflictname: unsupported hash version: 9
błąd: Niespełnione zależności:
        /sbin/ldconfig jest wymagany przez db4.5-4.5.20-7.i686
        libc.so.6 jest wymagany przez db4.5-4.5.20-7.i686
        libc.so.6(GLIBC_2.0) jest wymagany przez db4.5-4.5.20-7.i686
        libc.so.6(GLIBC_2.1) jest wymagany przez db4.5-4.5.20-7.i686
        libc.so.6(GLIBC_2.1.3) jest wymagany przez db4.5-4.5.20-7.i686
        libc.so.6(GLIBC_2.2) jest wymagany przez db4.5-4.5.20-7.i686
        libc.so.6(GLIBC_2.3) jest wymagany przez db4.5-4.5.20-7.i686
        libpthread.so.0 jest wymagany przez db4.5-4.5.20-7.i686
        libpthread.so.0(GLIBC_2.0) jest wymagany przez db4.5-4.5.20-7.i686
        libpthread.so.0(GLIBC_2.1) jest wymagany przez db4.5-4.5.20-7.i686
        libpthread.so.0(GLIBC_2.2) jest wymagany przez db4.5-4.5.20-7.i686
        libpthread.so.0(GLIBC_2.3.2) jest wymagany przez db4.5-4.5.20-7.i686
        rtld(GNU_HASH) jest wymagany przez db4.5-4.5.20-7.i686
        /lib jest wymagany przez db4.5-4.5.20-7.i686
        /usr/share/doc jest wymagany przez db4.5-4.5.20-7.i686
-bash-3.2#

Szczerze to boję się zaczynać z tymi zależnościami ręcznie... może ktoś ma jakąś wskazówkę jak to łatwiej zrobić?
Nie usuwam pakietów po udanej instalacji, ale nie wiem, czy można jakoś elegancko przeinstalować wszystkie pakiety z repo th (już napewno nie testowego! :-))?
Boję się że jak zacznę ręcznie coś instalować (czy to znalezione pakiety, żeby spełnić zależność db4.5, czy też wszystkie pakiety z th.PLD, to i tak niezgodna wersja bazy rpm nie pozwoli tego zainstalować.
Totalnie głupia myśl mnie naszła, że może jakoś dałoby radę zastąpić ręcznie /var/lib/rpm skopiowanym z inengo systemu? Skoro ja usunąłem to zgodnie ze standardową procedurą przed rebuilddb... Ale pewnie już się ze mnie śmieją wszyscy, no to.. jakieś inne sugestie niż zaczerpnięte z windows 'fresh install leczy wszystko'? ;-)

P.S. Prośba do autora wątku lub moderatorów: Temat wątku można już chyba zmienić na coś bardziej wymownego w stylu 'db4/rpm po aktualizacji z th-test' skoro już wiadomo gdzie leżał problem z pierwszego postu autora tematu. Teraz nic ten temat nie mówi.. Znowu wstyd przyznać, ale jak szukałem pomocy na forum wcześniej, to nawet nie kliknąlem w ten temat, bo wyglądał mi na problem z zasilaniem awaryjnym ;-D
_________________
:-(
 
 
 
KrystianT 

Distro: PLD 3.0
Pomógł: 189 razy
Dołączył: 26 Paź 2005
Posty: 1920
Skąd: Kamionek
Wysłany: 4 Sierpień 2007, 16:54   

pit napisał/a:
Prośba do autora wątku lub moderatorów: Temat wątku można już chyba zmienić na coś bardziej wymownego w stylu 'db4/rpm po aktualizacji z th-test'
A nie prościej było zacząć nowy wątek?
Jak dostaniesz rozwiązanie to nie mógłbyś kliknąć "pomógł" ;)
_________________
Krystian T.
"Errare humanum est."
 
 
pit 


Pomógł: 8 razy
Dołączył: 27 Lip 2005
Posty: 136
Skąd: Ostrów Wielkopolski
Wysłany: 4 Sierpień 2007, 18:04   

KrystianT napisał/a:
A nie prościej było zacząć nowy wątek?
Jak dostaniesz rozwiązanie to nie mógłbyś kliknąć "pomógł"

A jakoś nie pomyślałem nad tym, tamten mi się podobny wydał, to nie chciałem powielać.. Dzięki za temat ;-)
_________________
:-(
 
 
 
zalp 


Pomógł: 32 razy
Dołączył: 16 Gru 2005
Posty: 492
Wysłany: 4 Sierpień 2007, 20:00   

Jeżeli bazy zostały tknięte nowym poldkiem, rpm i db4.x to powrót do starych wersji jest mocno ryzykowny, a po wymianie jednocześnie kompletu paczek trzeba " rpm --rebuilddb".
Z tego co wiem, to rpm podczas przebudowy bazy danych tworzy kopię zapasową (nazwa katalogu bazy danych z cyferkami na końcu - czy jakoś tak). Jeżeli był błąd przebudowy to kopia powinna być. Masz te kopie?
Co do pakietów to ja mam tak:
Kod:
db4.5-4.5.20-7.i686
db4.5-cxx-4.5.20-7.i686
db4.6-4.6.18-1.i686
db4.6-cxx-4.6.18-1.i686
db4.6-cxx-devel-4.6.18-1.i686
db4.6-cxx-static-4.6.18-1.i686
db4.6-devel-4.6.18-1.i686
db4.6-java-4.6.18-1.i686
db4.6-java-devel-4.6.18-1.i686
db4.6-static-4.6.18-1.i686
db4.6-tcl-4.6.18-1.i686
db4.6-tcl-devel-4.6.18-1.i686
db4.6-utils-4.6.18-1.i686

python-rpm-4.4.9-4.i686
rpm-4.4.9-4.i686
rpm-apidocs-4.4.9-4.i686
rpm-base-4.4.9-4.i686
rpm-build-4.4.9-4.i686
rpm-build-macros-1.386-1.noarch
rpm-build-tools-4.4.9-4.i686
rpm-devel-4.4.9-4.i686
rpm-javaprov-4.4.9-4.i686
rpm-lib-4.4.9-4.i686
rpm-perlprov-4.4.9-4.i686
rpm-php-pearprov-4.4.9-4.i686
rpm-pythonprov-4.4.9-4.i686
rpm-static-4.4.9-4.i686
rpm-utils-4.4.9-4.i686
rpm-utils-perl-4.4.9-4.i686

poldek-0.21-0.20070703.00.3.i686
poldek-devel-0.21-0.20070703.00.3.i686
poldek-libs-0.21-0.20070703.00.3.i686
poldek-static-0.21-0.20070703.00.3.i686
python-poldek-0.21-0.20070703.00.3.i686
_________________
Pozdrawiam
 
 
 
pit 


Pomógł: 8 razy
Dołączył: 27 Lip 2005
Posty: 136
Skąd: Ostrów Wielkopolski
Wysłany: 4 Sierpień 2007, 20:49   

zalp napisał/a:
Z tego co wiem, to rpm podczas przebudowy bazy danych tworzy kopię zapasową (nazwa katalogu bazy danych z cyferkami na końcu - czy jakoś tak). Jeżeli był błąd przebudowy to kopia powinna być. Masz te kopie?

Jak próbowałem z rescue-cd "coś tam zdziałać" (tak jak pisałem) dostawałem bład, że nie można przebudować bazy bo istnieje już tymczasowa baza, no to szukałem i szukałem i jedyną rzeczą która tam mi nie pasowała był własnie ten katalog rpmbuild.jakiesnumerki czy coś takiego, no to jeśli to problem stanowiło w moim przekonaniu, to usunąłem to heh, dałem tyłka nieźle, widać! ;-D Chociaż tak sobie myślę że skoro wiele razy przebudowywałem tą bazę to pewnie tam i tak już dawno nieaktualna wersja była..
Co do reszty, to powalczę z tymi pakietami - postaram się jakoś ręcznie wrzucić te same pakiety, które Ty masz też, może coś akurat wyjdzie z tego. W sumie poldkiem sobie znajdę te zależności.
No i jak poldka uruchamiam, to dopełnia mi do usunięcia db4.5 i db4.6 (jak wyżej widać) i to myślałem, że jest właśnie u mnie problemem - że mam kilka równoważnych pakietów zainstalowanych, ale u Ciebie widzę podobnie, czyli to może razem być.. Dziwi mnie jednak to, że buduje bazę, której nie odczytuje później. Chociaż poldek niby ładuje pakiety, które mam zainstalowane, a jak cos chcę zmienić to sypie błędami o niemożności dostępu do bazy - dla mnie to dziwne. Może poldek z innej jakiejś bazy korzysta przy starcie? Eh ciężko się domyślać jak coś może działać, później 'tymczasowe' bazy giną... ;-) Przynajmniej mam już co w google wpisywać.
No nic, na razie dzięki zalp, jak skończę jedno zajęcia, to się znowu z PLD zmierzę, a jak się już zirytuję niepowodzeniami to się tu użalę raportem (bo na powodzenie to się zbytnio jeszcze nie nastawiam hehe) ;-)
P.S. Wakacje, weekend, sobota wieczór - pfi.
_________________
:-(
 
 
 
KrystianT 

Distro: PLD 3.0
Pomógł: 189 razy
Dołączył: 26 Paź 2005
Posty: 1920
Skąd: Kamionek
Wysłany: 4 Sierpień 2007, 21:59   

Ja mam taki (działający) zestaw:
Kod:
[krystian@laptom ~]$ rpm -qa db4\* rpm\* poldek\* |sort
db4.4-4.4.20-1.i686
db4.5-4.5.20-7.i686
db4.6-4.6.18-1.i686
poldek-0.21-0.20070703.00.3.i686
poldek-libs-0.21-0.20070703.00.3.i686
rpm-4.4.9-4.i686
rpm-base-4.4.9-4.i686
rpm-build-4.4.9-4.i686
rpm-build-macros-1.386-1.noarch
rpm-build-tools-4.4.9-4.i686
rpm-lib-4.4.9-4.i686
rpm-perlprov-4.4.9-4.i686
rpm-pythonprov-4.4.9-4.i686
rpm-utils-4.4.9-4.i686

Chciałby ci zwrócić uwagę na podkreślenie zalpa
zalp napisał/a:
po wymianie jednocześnie kompletu paczek
U ciebie widzę tylko upgrade rpm-a, a poldek chyba został stary. Może ściągnij nowego poldka ręcznie i zainstaluj przez rpm -i
_________________
Krystian T.
"Errare humanum est."
 
 
zalp 


Pomógł: 32 razy
Dołączył: 16 Gru 2005
Posty: 492
Wysłany: 4 Sierpień 2007, 22:03   

pit napisał/a:
Chociaż poldek niby ładuje pakiety, które mam zainstalowane, a jak cos chcę zmienić to sypie błędami o niemożności dostępu do bazy - dla mnie to dziwne. Może poldek z innej jakiejś bazy korzysta przy starcie?

A no korzysta. Jeżeli jeszcze ta lista jest to warto ją cała zapisać. To są zainstalowane pakiety.
Może tak:
Kod:
#poldek --shcmd='ls -I' > /jakieś_katalogi/ratunek.txt

Po wykasowaniu paru pierwszych linijek informacyjnych i ostatniej można uzyskać czystą listę pakietów.
Bazę dla rpm potem można odtworzyć z tej listy przy użyciu --justdb.
Może nawet poldkiem (ale nie mam pewności):
Kod:
#poldek install --reinstall --justdb --pset=/jakieś_katalogi/ratunek.txt

Hmm, jeżeli poldek te bazy ma to może (czysta teoria):
Kod:
#poldek upgrade --reinstall --justdb *


PS:
Jeżeli bazy rpm poszły na wieki i jest pusto w katalogu "/var/lib/rpm" to:
Kod:
rpm --initdb

Dodam jeszcze, że zestaw pakietów db4.x, rpm, poldek na RescueCD, czyli bazy danych tworzone lub modyfikowane tam nie są zgodne z tym co jest tworzone lub modyfikowane przy użyciu paczek dostępnych w [Th] (pozmieniało się troszkę). Czyli zmiany wykonywane za pomocą RescueCD należy teoretycznie poprzedzić "rpm --rebuilddb", powrót do obsługi zestawem paczek w distro należałoby zakończyć "rpm --rebuilddb" w zainstalowanym systemie. Wydaje mnie się, że na tą chwilę lepiej unikać zmian za pomocą RescueCD w [Th].
_________________
Pozdrawiam
 
 
 
adzinok
[Usunięty]

Wysłany: 5 Sierpień 2007, 10:47   

Napiszę jak zrobiłem u siebie - pitowi to pewnie nie pomoże, ale może inni skorzystają:

poldek:/all-avail> install rpm-*
poldek:/all-avail> get poldek-*
poldek:/all-avail> quit
rpm --rebuilddb
rpm -U poldek-*

i działa :smile:
Kod:
$ rpm -qa db4\* rpm\* poldek\* | sort
db4.6-4.6.18-1.i686
poldek-0.21-0.20070703.00.3.i686
poldek-libs-0.21-0.20070703.00.3.i686
rpm-4.4.9-4.i686
rpm-base-4.4.9-4.i686
rpm-build-4.4.9-4.i686
rpm-build-macros-1.386-1.noarch
rpm-build-tools-4.4.9-4.i686
rpm-lib-4.4.9-4.i686
rpm-pythonprov-4.4.9-4.i686
rpm-utils-4.4.9-4.i686

zaznaczam, że robiłem to troszkę "na czuja" - nie wiem czy u innych zadziała...
 
 
pit 


Pomógł: 8 razy
Dołączył: 27 Lip 2005
Posty: 136
Skąd: Ostrów Wielkopolski
Wysłany: 5 Sierpień 2007, 16:32   

Witam,
usunalem wszystko z /var/lib/rpm, rpm --initdb, a że jak juz pisalem, nie usuwam pakietow nawet po pomyslnej instalacji, to skopiowalem wszystkie pobrane z repo th i th-noarch do jednego katalogu, i tam:
Kod:
-bash-3.2# rpm -Uvh --justdb *.rpm
ostrzeżenie: pakiet cups-lib = 1:1.2.11-2 był już dodany, jest zastępowany przez cups-lib >= 1:1.2.12-1
ostrzeżenie: pakiet e2fsprogs = 0:1.40.1-1 był już dodany, jest zastępowany przez e2fsprogs >= 0:1.40.2-1
ostrzeżenie: pakiet e2fsprogs = 0:1.40.2-1 był już dodany, pomijanie e2fsprogs < 0:1.40-2
ostrzeżenie: package file e2fsprogs-1.40-2.i686.rpm was skipped
ostrzeżenie: pakiet fsck = 0:1.40.1-1 był już dodany, jest zastępowany przez fsck >= 0:1.40.2-1
ostrzeżenie: pakiet fsck = 0:1.40.2-1 był już dodany, pomijanie fsck < 0:1.40-2
ostrzeżenie: package file fsck-1.40-2.i686.rpm was skipped
ostrzeżenie: pakiet gcc = 6:4.2.0-9 był już dodany, jest zastępowany przez gcc >= 6:4.2.1-1
ostrzeżenie: pakiet geninitrd = 0:8648-1 był już dodany, jest zastępowany przez geninitrd >= 0:8648-2
ostrzeżenie: pakiet geninitrd = 0:8648-2 był już dodany, jest zastępowany przez geninitrd >= 0:8682-1
ostrzeżenie: pakiet genromfs = 0:0.5.1-3 był już dodany, jest zastępowany przez genromfs >= 0:0.5.2-1
ostrzeżenie: pakiet giflib = 0:4.1.4-4 był już dodany, jest zastępowany przez giflib >= 0:4.1.4-6
ostrzeżenie: pakiet libcom_err = 0:1.40.1-1 był już dodany, jest zastępowany przez libcom_err >= 0:1.40.2-1
ostrzeżenie: pakiet libcom_err = 0:1.40.2-1 był już dodany, pomijanie libcom_err < 0:1.40-2
ostrzeżenie: package file libcom_err-1.40-2.i686.rpm was skipped
ostrzeżenie: pakiet libgcc = 6:4.2.0-8 był już dodany, jest zastępowany przez libgcc >= 6:4.2.0-9
ostrzeżenie: pakiet libgcc = 6:4.2.0-9 był już dodany, jest zastępowany przez libgcc >= 6:4.2.1-1
ostrzeżenie: pakiet libmng = 0:1.0.10-1 był już dodany, pomijanie libmng < 0:1.0.9-4
ostrzeżenie: package file libmng-1.0.9-4.i686.rpm was skipped
ostrzeżenie: pakiet libstdc++ = 6:4.2.0-8 był już dodany, jest zastępowany przez libstdc++ >= 6:4.2.0-9
ostrzeżenie: pakiet libstdc++ = 6:4.2.0-9 był już dodany, jest zastępowany przez libstdc++ >= 6:4.2.1-1
ostrzeżenie: pakiet libuuid = 0:1.40.1-1 był już dodany, jest zastępowany przez libuuid >= 0:1.40.2-1
ostrzeżenie: pakiet libuuid = 0:1.40.2-1 był już dodany, pomijanie libuuid < 0:1.40-2
ostrzeżenie: package file libuuid-1.40-2.i686.rpm was skipped
ostrzeżenie: pakiet libvolume_id = 1:112-1 był już dodany, jest zastępowany przez libvolume_id >= 1:113-1
ostrzeżenie: pakiet mozilla-firefox = 0:2.0.0.4-1 był już dodany, jest zastępowany przez mozilla-firefox >= 0:2.0.0.4-2
ostrzeżenie: pakiet mozilla-firefox-libs = 0:2.0.0.4-1 był już dodany, jest zastępowany przez mozilla-firefox-libs >= 0:2.0.0.4-2
ostrzeżenie: pakiet nspr = 1:4.6.6-1 był już dodany, jest zastępowany przez nspr >= 1:4.6.7-1
ostrzeżenie: pakiet openldap-libs = 0:2.3.35-1 był już dodany, jest zastępowany przez openldap-libs >= 0:2.3.36-1
ostrzeżenie: pakiet pdksh = 0:5.2.14-44 był już dodany, jest zastępowany przez pdksh >= 0:5.2.14-45
ostrzeżenie: pakiet poldek = 0:0.21-0.20070703.00.1 był już dodany, jest zastępowany przez poldek >= 0:0.21-0.20070703.00.2
ostrzeżenie: pakiet poldek-libs = 0:0.21-0.20070703.00.1 był już dodany, jest zastępowany przez poldek-libs >= 0:0.21-0.20070703.00.2
ostrzeżenie: pakiet popt = 0:1.11-4 był już dodany, jest zastępowany przez popt >= 0:1.12-1
ostrzeżenie: pakiet udev = 1:112-1 był już dodany, jest zastępowany przez udev >= 1:113-1
ostrzeżenie: pakiet xkeyboard-config = 0:0.9-1 był już dodany, jest zastępowany przez xkeyboard-config >= 0:1.0-1
Przygotowywanie...          ########################################### [100%]
-bash-3.2#

Mogę już instalować poldkiem pakiety! Nadal była jeszcze jakaś niezgodność, bo:
Kod:
-bash-3.2# rpm -qa |wc -l
452
-bash-3.2# poldek
...
Wczytywanie [rpmdbcache]/var/lib/rpm...
Przeczytano 436 pakietów
...
poldek:/all-avail>

Ale i to zniknęło po opróżnieniu katalogu tmp/ (poldek wczytał na nowo dane z nowej bazy /var/lib/rpm). Jeszcze kwestia tego, że wiadomo, że to nie do końca prawdziwa baza, bo w końcu nie ma w niej tych pakietów, które forcowałęm rpm'em (starsze wersje rpm), i może jakichś które się zainstalowały (a może któreś nie do końca?) podczas nieudanej aktualizacji, no i wreszcie te, które miałem zainstalowane z th-test, no ale póki działa to chyba lepiej nie tykać, pewnie się "samo naprawi" z czasem, z aktualizacjami, tak? Pewnie jak wyjdą jako stabilne wersje pakietów które mam u siebie, ale nie są uwzględnione w bazie to razem z nadpiwywaniem ich, do bazy trafi info o nich...
Nie chcę chyba próbować importowania do bazy tych pakietów, które miał poldek w swojej poprzedniej bazie (tak jak zalp podpowiadał, skopiowałem tą listę..), bo coś mi to śmierdzi ręcznym wybieraniem tych 400 pakietów do jednego katalogu, co? ;-D

Tymczasem dzięki wielkie za pomoc i wskazówki!

P.S. Pewnie godzinę by zajęło skopiowanie /etc na inną partycję i przeinstalowanie systemu od nowa z chroota, ale... ;-)

EDIT:
Wlasnie zrobilem upgrade rpm-* z th stabilnego i widzę identyczną lawinę błędów jak poprzednio, nawet takie same grupy pakietów się akurat instalują hehe, znów rpm-* a dalej xterm i error
Cytat:
rpmdb: PANIC: fatal region error detected; run recovery
błąd: błąd db4(-30975) z db->cursor: DB_RUNRECOVERY: Fatal error, run database recovery

No i narusznie ochrony pamieci gdy probuje poldka odpalic teraz ;-) Czyli problem wcale nie był rozwiązany heh, może to wina tych paczek testowych, których nie ma w bazie ale są zainstalowane... można jakoś łatwo wyszukać i usunąć te pliki?
_________________
:-(
 
 
 
zalp 


Pomógł: 32 razy
Dołączył: 16 Gru 2005
Posty: 492
Wysłany: 5 Sierpień 2007, 20:00   

Może właśnie zainstalować te paczki, których parę działających zestawów jest już w tym wątku, ale już normalnie, bez "--justdb", a nawet z "--force". :wink:
No i wiadomo: "rpm --rebuilddb".
_________________
Pozdrawiam
 
 
 
pit 


Pomógł: 8 razy
Dołączył: 27 Lip 2005
Posty: 136
Skąd: Ostrów Wielkopolski
Wysłany: 12 Sierpień 2007, 12:25   

Hm, zapomniałem wcześniej dopisać, że wszystko działa. Tak jak wcześniej + rpm'em zainstalowałem pakiety z listy Krystiana (bo krótsza) i hula.
Dziękuję za pomoc ;-)
_________________
:-(
 
 
 
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group