Skocz do zawartości

Yum Padł Przy Próbie Zastopowania Procesu


Piotrek23

Rekomendowane odpowiedzi

Wykonałem polecenie yum do instalacji jakiegoś pakietu i po chwili przerwałem operację. Zaczął mi wyskakiwać błąd o bazie danych tak więc przesunąłem starą i odnowiłem po czym przy każdym poleceniu YUM dostaje taki błąd:

[root@piotrek-fedora ~]# yum
Traceback (most recent call last):
  File "/usr/bin/yum", line 29, in <module>
    yummain.user_main(sys.argv[1:], exit_code=True)
  File "/usr/share/yum-cli/yummain.py", line 258, in user_main
    errcode = main(args)
  File "/usr/share/yum-cli/yummain.py", line 88, in main
    base.getOptionsConfig(args)
  File "/usr/share/yum-cli/cli.py", line 226, in getOptionsConfig
    self.conf
  File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 822, in <lambda>
    conf = property(fget=lambda self: self._getConfig(),
  File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 277, in _getConfig
    startupconf = config.readStartupConfig(fn, root)
  File "/usr/lib/python2.6/site-packages/yum/config.py", line 859, in readStartupConfig
    startupconf.releasever = _getsysver(startupconf.installroot, startupconf.distroverpkg)
  File "/usr/lib/python2.6/site-packages/yum/config.py", line 1010, in _getsysver
    hdr = idx.next()
StopIteration
[root@piotrek-fedora ~]#

 

Odnośnik do komentarza
Udostępnij na innych stronach

Niebezpiecznie się robi :ph34r:

Jeśli robiłeś coś z /var/lib/rpm/Packages, to źle. Jeśli masz kopię sprzed manipulacji, to dobrze :)

Zakładam, że jest dobrze...

1.Wrzuć kopię pliku "Packages", którą wcześniej mam nadzieję zrobiłeś z powrotem do /var/lib/rpm

2.usuń wszystkie pliki /var/lib/rpm/__db* (dwa znaki podkreślenia przed "db").

3.wykonaj jako root polecenie

rpm --rebuilddb

to może potrwać, ale czekaj cierpliwie. Potem to co pisałem wcześniej z yumem.

Odnośnik do komentarza
Udostępnij na innych stronach

Dalej ten sam błąd niestety :F
Ściągnij z jakiegoś mirrora Fedory dowolną, niewielką aplikację w postaci pliku *.rpm i spróbuj zainstalować przy pomocy polecenia rpm zamiast yum - będzie wiadomo czy problem jest gdzieś po stronie yum'a czy po stronie rpm.

 

[EDIT]

I pisz jakoś obszerniej. Z tekstu "dalej ten sam błąd" niewiele wynika. Napisz co zrobiłeś, czy udało Ci się przebudować Packages, czy były komunikaty błędu, czy możesz przeszukiwać bazę plików poleceniem "rpm -qa" itp.

Odnośnik do komentarza
Udostępnij na innych stronach

Dlaczego akurat z Koji? Nie możesz wziąć czegoś z normalnych stabilnych repo? Zresztą komunikat jest wyłącznie o niespełnionych zależnościach (masz jak byk "błąd: Niespełnione zależności:") i nic nie wskazuje na to, że baza jest uszkodzona.

 

Spróbuj zrobić "yum clean all; yum update" (nie samo "yum") i pokaż od początku do końca wszystkie błędy jakie wyskakują, bo to chyba coś z yumem jest nie tak.

 

A przy okazji upewnij się, że nie masz zainstalowanego i działającego ustrojstwa typu PackageKit, bo to też może przeszkadzać (chociaż z tego co pokazujesz to raczej nie jest problem konkurencji dostępu do bazy).

Odnośnik do komentarza
Udostępnij na innych stronach

No, a rpm --rebuilddb wykonuje się poprawnie? Pamiętaj, że pliku Packages nie może być w katalogu /var/lib/rpm w czasie przebudowania.

Wykonałeś wszystko kolejno tak jak opisane tutaj → http://wiki.fedora.pl/wiki/RPM_-_procedury...dzonej_bazy_RPM ?

 

Możesz np. wyszukać czy jakiś pakiet jest zainstalowany?

rpm -qa firefox
rpm -qa kernel

Pokaż

ls -l /var/lib/rpm

Odnośnik do komentarza
Udostępnij na innych stronach

Widok z katalogu:

[Piotrek@piotrek-fedora rpm]$ ls -l /var/lib/rpm
razem 70216
-rw-r--r--. 1 root root  5558272 08-08 18:38 Basenames
-rw-r--r--. 1 root root    12288 08-08 18:09 Conflictname
-rw-r--r--. 1 root root  1667072 08-08 18:38 Dirnames
-rw-r--r--. 1 root root 10444800 08-08 18:38 Filedigests
-rw-r--r--. 1 root root    36864 08-08 18:38 Group
-rw-r--r--. 1 root root    28672 08-08 18:38 Installtid
-rw-r--r--. 1 root root    86016 08-08 18:38 Name
-rw-r--r--. 1 root root    24576 08-08 18:31 Obsoletename
-rw-r--r--. 1 root root    12288 08-10 15:30 Packages
-rw-r--r--. 1 root root 54480896 08-08 18:38 Packages_old
-rw-r--r--. 1 root root  1286144 08-08 18:38 Providename
-rw-r--r--. 1 root root   212992 08-08 18:38 Provideversion
-rw-r--r--. 1 root root    12288 08-08 18:06 Pubkeys
-rw-r--r--. 1 root root   540672 08-08 18:38 Requirename
-rw-r--r--. 1 root root   327680 08-08 18:38 Requireversion
-rw-r--r--. 1 root root   163840 08-08 18:38 Sha1header
-rw-r--r--. 1 root root    90112 08-08 18:38 Sigmd5
-rw-r--r--. 1 root root    12288 08-07 19:46 Triggername
[Piotrek@piotrek-fedora rpm]$

 

Nadal mam kopię pliku Packages w pliku Packages_old a plik Packages to został nowo utworzony po wydaniu rpm --rebuild. A tyle widziano po pakietach:

[Piotrek@piotrek-fedora rpm]$ rpm -qa firefox
[Piotrek@piotrek-fedora rpm]$ rpm -qa kernel
[Piotrek@piotrek-fedora rpm]$

 

Odnośnik do komentarza
Udostępnij na innych stronach

Ja bym spróbował jeszcze raz usunąć i przebudować Packages (zakładam, że podajesz opcję "--rebuilddb" a nie jak napisałes "--rebuild" :) )

Jak nie pomoże, to przywróciłbym Packages_old z nazwą Packages i sprawdził czy da się przeglądać (czyli "rpm -qa ..." tak jak poprzednio).

Odnośnik do komentarza
Udostępnij na innych stronach

Moja głupota nie zna granic. To dziwne bo wcześniej przesuwałem stary plik i nic to nie dawało... ale już wiem co robiłem źle :-) Dzięki WalDo :) Takie dość prywatne pytanie, czemu nie założysz bloga? :-P

 

I przy yum update:

Ustawianie procesu aktualizacji
Rozwiązywanie zależności
--> Wykonywanie sprawdzania transakcji
---> Pakiet cronie.x86_64 0:1.4.5-1.fc13 zostanie zaktualizowany
---> Pakiet cronie-anacron.x86_64 0:1.4.5-1.fc13 zostanie zaktualizowany
---> Pakiet iputils.x86_64 0:20071127-12.fc13 zostanie zaktualizowany
---> Pakiet openconnect.x86_64 0:2.25-1.fc13 zostanie zaktualizowany
---> Pakiet selinux-policy.noarch 0:3.7.19-44.fc13 zostanie zaktualizowany
---> Pakiet selinux-policy-targeted.noarch 0:3.7.19-44.fc13 zostanie zaktualizowany
--> Ukończono rozwiązywanie zależności

Rozwiązano zależności

================================================================================
Pakiet                      Architektura
                                        Wersja                Repozytorium
                                                                          Rozmiar
================================================================================
Aktualizowanie:
cronie                      x86_64     1.4.5-1.fc13          updates      70 k
cronie-anacron              x86_64     1.4.5-1.fc13          updates      27 k
iputils                     x86_64     20071127-12.fc13      updates     119 k
openconnect                 x86_64     2.25-1.fc13           updates      77 k
selinux-policy              noarch     3.7.19-44.fc13        updates     712 k
selinux-policy-targeted     noarch     3.7.19-44.fc13        updates     2.2 M

Podsumowanie transakcji
================================================================================
Upgrade       6 Package(s)

Całkowity rozmiar pobierania: 3.2 M
W porządku? [t/N]: t
Pobieranie pakietów:
Setting up and reading Presto delta metadata
updates/prestodelta                                      |  24 kB     00:00     
Processing delta metadata
Download delta size: 2.1 M
(1/6): cronie-1.4.4-1.fc13_1.4.5-1.fc13.x86_64.drpm      |  55 kB     00:00     
(2/6): cronie-anacron-1.4.4-1.fc13_1.4.5-1.fc13.x86_64.d |  23 kB     00:00     
(3/6): iputils-20071127-11.fc13_20071127-12.fc13.x86_64. |  83 kB     00:00     
(4/6): openconnect-2.22-1.fc13_2.25-1.fc13.x86_64.drpm   |  62 kB     00:00     
(5/6): selinux-policy-3.7.19-41.fc13_3.7.19-44.fc13.noar | 157 kB     00:00     
(6/6): selinux-policy-targeted-3.7.19-41.fc13_3.7.19-44. | 1.8 MB     00:05     
Finishing rebuild of rpms, from deltarpms
<delta rebuild>                                          | 3.2 MB     00:03     
Presto reduced the update size by 34% (from 3.2 M to 2.1 M).
Wykonywanie rpm_check_debug
Wykonywanie testu transakcji
Test transakcji został ukończony powodzeniem
Wykonywanie transakcji
Ostrzeżenie: baza danych RPM została zmieniona poza programem yum.
** Found 1 pre-existing rpmdb problem(s), 'yum check' output follows:
1:nfs-utils-1.2.2-2.fc13.x86_64 posiada brakujące wymagania rpcbind
Traceback (most recent call last):
  File "/usr/bin/yum", line 29, in <module>
    yummain.user_main(sys.argv[1:], exit_code=True)
  File "/usr/share/yum-cli/yummain.py", line 258, in user_main
    errcode = main(args)
  File "/usr/share/yum-cli/yummain.py", line 196, in main
    return_code = base.doTransaction()
  File "/usr/share/yum-cli/cli.py", line 544, in doTransaction
    resultobject = self.runTransaction(cb=cb)
  File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 1334, in runTransaction
    self.skipped_packages, rpmdb_problems, cmdline)
  File "/usr/lib/python2.6/site-packages/yum/history.py", line 500, in beg
    self._trans_rpmdb_problem(problem)
  File "/usr/lib/python2.6/site-packages/yum/history.py", line 433, in _trans_rpmdb_problem
    to_unicode(str(problem))))
UnicodeEncodeError: 'ascii' codec can't encode character u'\u0105' in position 46: ordinal not in range(128)
[Piotrek@piotrek-fedora ~]$

 

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...