[+] dziwne dzia

Tematy związane z oprogramowaniem, instalacją, konfiguracją
Awatar użytkownika
mesiu84
Beginner
Posty: 248
Rejestracja: 12 stycznia 2007, 00:37
Lokalizacja: Rzeszów / Clearwater FL / Nowa Dęba

[+] dziwne działanie aptitude i apt-get

Post autor: mesiu84 »

Ostatnimi czasy zauważyłem że obydwa te programiki zachowują się dziwnie. W momencie gdy wydaję polecenie

Kod: Zaznacz cały

aptitude/apt-get update
wszystko idzie ładnie ślicznie, aż do momentu gdy dochodzi do 99%, transfer nagle spada do 0 i wszystko się zatrzymuje. W momencie gdy przerwę wykonywanie polecenia CTRL+C (po długim oczekiwaniu, raz przez zapomnienie zrobiłem to po godzinie) i wydam

Kod: Zaznacz cały

aptitude/apt-get upgrade/dist-upgrade
paczki się ściągają, ale nie mam pewności czy nie wykonane do końca poprzednie polecenie ma jakiś wpływ na to, czy przypadkiem nie ma takiej sytuacji w której ściągają się nie wszystkie pakiety. Sprawdzałem plik sources.list i nawet po wykasowaniu z niego wszystkich dodatkowych linków i pozostawieniu tych domyślnych sytuacja się powtarza. Gdzie może tkwić błąd? Czy ktos spotyka się z podobna sytuacją? Dodam tylko że chodzi o Lenny'ego.
fnmirk
Senior Member
Posty: 8322
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

Dlaczego przerywasz działanie polecenia:

Kod: Zaznacz cały

aptitude/apt-get update
Jak nie uzyskasz pełnej informacji o dostępnej bazie pakietów z serwerów to może trochę to potrwać przy kolejnych próbach. Czas trwania operacji zależy też od wielu przyczyn: częstotliwość pobierania takich informacji, ruchu na serwerach, z których pobierasz informację, mieszanie aptitude i apt-get.

Jak przerwiesz powyższe i nie doprowadzisz do końca to przy próbie instalacji czy aktualizacji mogą wystąpić błędy wynikające z niespełnionych zależności.
Awatar użytkownika
mesiu84
Beginner
Posty: 248
Rejestracja: 12 stycznia 2007, 00:37
Lokalizacja: Rzeszów / Clearwater FL / Nowa Dęba

Post autor: mesiu84 »

1. Nie mieszam tych poleceń, korzystam z aptitude jednak dla potwierdzenia czy sytuacja dzieje się tylko tutaj skorzystałem z apt-get no i okazało się że jest tak samo.
2. Proste pytanie: Ty nie przerwałbyś działania polecenia w sytuacji gdy przez godzinę albo i dłużej stoi w miejscu, wszelki ruch na interfejsach sieciowych jest równy 0 (czyli nic się nie ściąga)?
3. Aktualizację systemu przeprowadzam średnio raz albo dwa razy w tygodniu, za każdym razem zatrzymuje mi się przy 99%.
4. Obciążenie serwerów nie ma z tym nic wspólnego, ponieważ w tym samym czasie kumpel, który siedzi obok mnie pobiera wszystkie aktualizacje, ale w jego przypadku update dochodzi do 100%, korzystamy z tej samej listy serwerów, więc to też wyklucza błąd na serwerze lub jakąkolwiek jego winę, zresztą sprawdzałem dodatkowo z jeszcze innym serwerem ale sytuacja taka sama.

Z tego co napisałem powyżej wnioskuję, że błąd znajduje się konkretnie w moim systemie, ma ktoś pojęcie co może wpływać na takie dziwne działanie? Dodam, że jest to sytuacja która zdarza się od miesiąca albo dwóch, wcześniej wszystko działało idealnie.
fnmirk
Senior Member
Posty: 8322
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

mesiu84 pisze:nie przerwałbyś działania polecenia w sytuacji gdy przez godzinę albo i dłużej stoi w miejscu, wszelki ruch na interfejsach sieciowych jest równy 0 (czyli nic się nie ściąga)?
Tu masz rację.
Spróbuj zmienić wpisy w /etc/apt/sources.list. Ustaw może serwery: czeskie, niemieckie itp.

Zajrzyj do tego. Nie sprawdzałem?
pavbaranov
Senior Member
Posty: 2156
Rejestracja: 29 lipca 2007, 18:06

Post autor: pavbaranov »

Hmmm, a przy update pobiera informacje z wszystkich serwerów umieszczonych we wpisach sources.list? Jeśli tak, to... nie mam pojęcia. Jeśli nie to prawdopodobnie występuje sytuacja, w której apt uzyskał wcześniej informację o tym, że na danym serwerze jest jakaś paczka, którą próbuje teraz ściągnąć, a ma problem z połączeniem.
Jest - ale musisz go sam znaleźć - programik dla Debiana, który sprawdza listę dostępnych serwerów (mirrorów) i typuje te, z którymi masz najlepsze połączenie.
Możesz też sprawdzić - jeśli wpisy w sources.list masz z listy dostępnych mirrorów - na stronie Debiana czy masz ze wszystkimi serwerwami połączenie. Jeśli nie - zrób jak powiedział fnmirk - zmień serwer. Jeśli wszędzie możesz się połączyć, a APT zachowuje się dziwnie, to... oprócz wyczyszczenia mu wszystkich cache i próby ponownego update nie mam pomysłu, co można zrobić i w czym jest problem.
Awatar użytkownika
mesiu84
Beginner
Posty: 248
Rejestracja: 12 stycznia 2007, 00:37
Lokalizacja: Rzeszów / Clearwater FL / Nowa Dęba

Post autor: mesiu84 »

Chciałbym wrócić do tematu. Otóż po dokładniej analizie tego wszystkiego co robi aptitude, okazało się, że:

- pliki nagłówkowe są ściągane z serwera wszystkie, sprawdzałem na 2 jeszcze innych komputerach,
- pobieranie staje na 99% ale jak napisałem powyżej jest już wszystko ściągnięte,
- źle jest budowana (a raczej nie jest budowana) lokalna baza z pakietami, wywnioskowałem to po tym, iż mimo ściągnięcia wszystkich paczek mam problem przy aktualizacji systemu, czasami pojawia się błąd 404, czyli nie znaleziono pakietu, ja wchodzę samodzielnie na serwer by sprawdzić czy tak rzeczywiście jest okazuje się, że wersja pakietu różni się o jeden albo dwa numerki i dlatego jest ten błąd.

Moje pytania w chwili obecnej wyglądają tak:
1. To co poprzednio, czyli jak to poprawić? :-) <- nic nowego
2. Jak ewentualnie zresetować bazę pakietów?
3. Jak sprawdzić dlaczego ta baza nie jest zapisywana?
4. Gdzie znajduje się taka baza pakietów?

Jeśli pojawią się dodatkowe pytania zamieszczę je tutaj. Proszę o pomoc, Debiana trzeba naprawiać a nie przeinstalowywać:-) więc jak to naprawić?
fnmirk
Senior Member
Posty: 8322
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

Nie wiem jakbym postąpił w tej sytuacji (nie trafiła mnie się) ale:
  1. Wykonałbym kopię zawartości katalogu /var/cache/apt/archives
  2. Następnie:

    Kod: Zaznacz cały

    apt-get autoclean

    Kod: Zaznacz cały

    apt-get clean
  3. Kod: Zaznacz cały

    apt-get update
  4. Kod: Zaznacz cały

    apt-get -u upgrage
    Opcja -u aby wiedzieć jakie zmiany są wprowadzane i skąd - nie wiem jak podobnie wykonać z aptitude. Odsyłam do mana.
pavbaranov
Senior Member
Posty: 2156
Rejestracja: 29 lipca 2007, 18:06

Post autor: pavbaranov »

mesiu84 pisze:1. To co poprzednio, czyli jak to poprawić?
Kiedyś miałem coś podobnego i pomogła zmiana serwera, z którego ściąga paczki. Można ewentualnie chwilę poczekać, może informacje na serwerze zostaną naprawione. Z opisanej sytuacji, wynika, że baza danych na serwerze nie odpowiada zawartości serwera. Tak, jakby plik packages.gz była wadliwie tworzona.
2. Jak ewentualnie zresetować bazę pakietów?
Jeśli się nie mylę - zresetuje się automatycznie, gdy wszystko będzie prawidłowo działać (tzn. jeśli pobrane info o paczkach, będzie tożsame z paczkami na serwerze). Jeśli nie - pomagają bądź sposoby wskazane przez fnmirka bądź także ręczne wykasowanie katalogu z zawartością danych apta.
Ad. 4 - Jedyne znane mi to /var/apt/ i tutaj masz różne info. Przeskanuj sobie system za apt, czy aptitude (tego ostatniego nie używam). I sprawdź sobie /var/backups/ i pliki dpkg.* Tyle mi się jedynie kojarzy.
fnmirk
Senior Member
Posty: 8322
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

Pokaż jeszcze jak wygląda wynik polecenia:

Kod: Zaznacz cały

apt-cache policy
Awatar użytkownika
mesiu84
Beginner
Posty: 248
Rejestracja: 12 stycznia 2007, 00:37
Lokalizacja: Rzeszów / Clearwater FL / Nowa Dęba

Post autor: mesiu84 »

A proszę:-)

Kod: Zaznacz cały

Plików pakietów:
 100 /var/lib/dpkg/status
     release a=now
 500 [url]http://playonlinux.botux.net[/url] gutsy/main Packages
     release v=7.10,o=PlayOnLinux,a=stable,l=PoL,c=main
     origin playonlinux.botux.net
 500 file: apt-build/main Packages
     release o=apt-build,l=apt-build,c=main
 500 [url]http://download.tuxfamily.org[/url] ./ Packages
     release c=
     origin download.tuxfamily.org
 500 [url]http://www.debian-multimedia.org[/url] testing/main Translation-pl
 500 [url]http://www.debian-multimedia.org[/url] testing/main Packages
     release v=None,o=Unofficial Multimedia Packages,a=testing,l=Unofficial Multimedia Packages,c=main
     origin [url]www.debian-multimedia.org[/url]
 500 [url]http://ftp.pl.debian.org[/url] testing/non-free Packages
     release o=Debian,a=testing,l=Debian,c=non-free
     origin ftp.pl.debian.org
 500 [url]http://ftp.pl.debian.org[/url] testing/contrib Packages
     release o=Debian,a=testing,l=Debian,c=contrib
     origin ftp.pl.debian.org
 500 [url]http://ftp.pl.debian.org[/url] testing/main Translation-pl
 500 [url]http://ftp.pl.debian.org[/url] testing/main Packages
     release o=Debian,a=testing,l=Debian,c=main
     origin ftp.pl.debian.org
Przypięte pakiety:


[ Dodano: 2009-01-05, 22:16 ]
fnmirk pisze:Nie wiem jakbym postąpił w tej sytuacji (nie trafiła mnie się) ale:
  1. Wykonałbym kopię zawartości katalogu /var/cache/apt/archives
  2. Następnie:

    Kod: Zaznacz cały

    apt-get autoclean

    Kod: Zaznacz cały

    apt-get clean
  3. Kod: Zaznacz cały

    apt-get update
  4. Kod: Zaznacz cały

    apt-get -u upgrage
    Opcja -u aby wiedzieć jakie zmiany są wprowadzane i skąd - nie wiem jak podobnie wykonać z aptitude. Odsyłam do mana.
no niestety to nie działa, sprawdzałem wcześniej, zresztą bardzo często robię sobie czyszczenie pakietów:-)
ODPOWIEDZ