Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2014-05-04 20:47:17

  nmarx - Użytkownik

nmarx
Użytkownik
Zarejestrowany: 2014-02-27

Aktualizacja pakietów w testingu - jaki sposób najlepszy.

Ok przenieśmy tutaj dyskusję dot. aktualizacji pakietów w testingu - żeby nie robić offtop w innym temacie. Kontunuując różnicę między np. aptitude/apt update, aptitude safe-upgrade/apt-get upgrade, aptitude full/dist upgrade/apt dist-upgrade a samymi aptitude/apt update i aptitude full/dist upgrade/apt dist-upgrade.

Właśnie dokonałem pierwszej aktualizacji na testingu i jeden pakiet (db5.1-util) został zatrzymany. Następnie dałem aptitude full-upgrade, które zaproponowało usunięcie tego pakietu. I teraz pytanie co w takich syt. robić na przyszłość, usuwać pakiety, które powodują problemy z zależnościami czy próbować je rozwiązywać?

Wcześniej korzystałem ze stable, to dopiero moje pierwsze kroki w testing i tylko ta kwestia jest jeszcze dla mnie niejasna.

Offline

 

#2  2014-05-04 20:48:46

  yossarian - Szczawiożerca

yossarian
Szczawiożerca
Skąd: Shangri-La
Zarejestrowany: 2011-04-25

Re: Aktualizacja pakietów w testingu - jaki sposób najlepszy.

Warto by pokazać ten przykład, żeby było widać w czym problem ;)

Offline

 

#3  2014-05-04 20:53:42

  nmarx - Użytkownik

nmarx
Użytkownik
Zarejestrowany: 2014-02-27

Re: Aktualizacja pakietów w testingu - jaki sposób najlepszy.

Kod:

root@debian:~# apt-get dist-upgrade
Czytanie list pakietów... Gotowe
Budowanie drzewa zależności       
Odczyt informacji o stanie... Gotowe
Obliczanie aktualizacji...Gotowe
Następujące pakiety zostały zatrzymane:
  db5.1-util
0 aktualizowanych, 0 nowo instalowanych, 0 usuwanych i 1 nieaktualizowanych.
root@debian:~#  aptitude full-upgrade
Następujące pakiety zostaną zaktualizowane:       
  db5.1-util{b} 
1 pakietów aktualizowanych, 0 instalowanych, 0 do usunięcia i 0 nieaktualizowanych.
Do pobrania 651 kB archiwów. Zajęte po rozpakowaniu: 1603 kB.
Następujące pakiety mają niespełnione zależności:
 db5.1-util : Narusza zależności: libdb5.1 (< 5.1.29-8~) ale zainstalowana jest wersja 5.1.29-6.
Następujące działania rozwiążą problemy z zależnościami:

     Usunięcie następujących pakietów:
1)     db5.1-util                     



Zaakceptować rozwiązanie? [Y/n/q/?] Y

Offline

 

#4  2014-05-04 21:20:01

  yossarian - Szczawiożerca

yossarian
Szczawiożerca
Skąd: Shangri-La
Zarejestrowany: 2011-04-25

Re: Aktualizacja pakietów w testingu - jaki sposób najlepszy.

Pokaż jeszcze:

Kod:

aptitude why db5.1-util

I spróbuj z ciekawości:

Kod:

 apt-get dist-upgrade -s

Bo u mnie zazwyczaj apt-get sam sobie radził z tym automatycznie.

Ta wersja jest trochę rozjechana i to jakaś migracja właśnie (5.1 → 5.3) bo z sida już ta wersja wyleciała:

Kod:

 db5.1-util | 5.1.29-5 | wheezy | amd64, armel, armhf, i386, ia64, kfreebsd-amd64, kfreebsd-i386, mips, mipsel, powerpc, s390, s390x, sparc
 db5.1-util | 5.1.29-8 | jessie | amd64, armel, armhf, i386, kfreebsd-amd64, kfreebsd-i386, mips, mipsel, powerpc, s390x
 db5.1-util | 5.1.29-8 | sid    | amd64, armel, armhf, hurd-i386, i386, kfreebsd-amd64, kfreebsd-i386, mips, mipsel, powerpc, s390x, sparc

Kod:

 libdb5.1 | 5.1.29-5 | wheezy | amd64, armel, armhf, i386, ia64, kfreebsd-amd64, kfreebsd-i386, mips, mipsel, powerpc, s390, s390x, sparc
 libdb5.1 | 5.1.29-6 | jessie | amd64, armel, armhf, i386, kfreebsd-amd64, kfreebsd-i386, mips, mipsel, powerpc

U mnie jest db5.3-util i db5.3-util i te są w tym samych wersjach.

Offline

 

#5  2014-05-04 21:27:21

  nmarx - Użytkownik

nmarx
Użytkownik
Zarejestrowany: 2014-02-27

Re: Aktualizacja pakietów w testingu - jaki sposób najlepszy.

Może dlatego, że robiłem podbicie ze stable? Ale to z wersji prawie minimalnej (bez xsów i xfce, doinstalowałem będąc już na jessie.

aptitude why:

Kod:

i   exim4-base     Sugeruje   mail-reader                         
p   wl-beta        Udostępnia mail-reader                         
p   wl-beta        Sugeruje   bogofilter | bsfilter | spamassassin
p   bogofilter     Wymaga     bogofilter-bdb | bogofilter-db      
p   bogofilter-bdb Sugeruje   db5.1-util

apt-get dist-upgrade -s nic ciekawego nie pokazuje, może dlatego ze juz zaakceptowałem wyrzucenie tego pakietu.

Offline

 

#6  2014-05-04 21:31:10

  yossarian - Szczawiożerca

yossarian
Szczawiożerca
Skąd: Shangri-La
Zarejestrowany: 2011-04-25

Re: Aktualizacja pakietów w testingu - jaki sposób najlepszy.

Bo ten pakiet był niepotrzebny już do niczego.
https://release.debian.org/transitions/html/db5.3.html

A pokaż teraz:

Kod:

apt-cache policy db5.3-util

Offline

 

#7  2014-05-04 21:39:31

  nmarx - Użytkownik

nmarx
Użytkownik
Zarejestrowany: 2014-02-27

Re: Aktualizacja pakietów w testingu - jaki sposób najlepszy.

Kod:

Zainstalowana: (brak)
  Kandydująca:   5.3.28-3
  Tabela wersji:
     5.3.28-3 0
        500 http://ftp.pl.debian.org/debian/ testing/main amd64 Packages

Offline

 

#8  2014-05-04 22:57:42

  Bitels - Użytkownik

Bitels
Użytkownik
Zarejestrowany: 2012-10-31

Re: Aktualizacja pakietów w testingu - jaki sposób najlepszy.

Panowie, podłącze się do pytania. Rozumiem, że te testing ma to do siebie, że czasami przy aktualizacji jakiś pakiet wpada, a czasami jakiś wypada. Jak coś ma wylecieć to powinno się sprawdzić czy jest nam potrzebny lub czy jego usunięcie nie spowoduje uszkodzenia systemu, ale jak to najprościej zrobić?

Offline

 

#9  2014-05-05 09:12:28

  gindek - Zubr, bydle na etacie.

gindek
Zubr, bydle na etacie.
Skąd: Z puszczy.
Zarejestrowany: 2008-12-08

Re: Aktualizacja pakietów w testingu - jaki sposób najlepszy.

Bitels napisał(-a):

Panowie, podłącze się do pytania. Rozumiem, że te testing ma to do siebie, że czasami przy aktualizacji jakiś pakiet wpada, a czasami jakiś wypada. Jak coś ma wylecieć to powinno się sprawdzić czy jest nam potrzebny lub czy jego usunięcie nie spowoduje uszkodzenia systemu, ale jak to najprościej zrobić?

Menadżer pakietów to robi, skoro raportuje ze coś jest nie potrzebne to oznacza ze nie ma dowiązania do tego pakietu z żadnego innego, wiec jest nie potrzebny.


Teraz taki chamski awaryjny przykład kiedy menadżer nie zadziała:
- pakiet libkowalski1 wymaga libcycki1
- pakiet libkowalski1 nie posiada w control file wpisanego ze wymaga libcycki1
- zaden inny pakiet nie wymaga do dzialania libcycki1
- menadżer pakietow usunie libcycki1, bo nie ma zainstalowanego pakietu ktory by go wymagal
- pakiet libkowalki1 nie bedzie dzialal bo nie ma libcycki1

Kiedy to sie może stać ? ... musi wystąpić czynnik błędu ludzkiego, który to czynnik nie wpisał pakietu libcycki1 na liste wymaganych pakietow przez libkowalski1
Kieyd widziałem cos takiego ostani raz ? ... no coz nigdy.


zatem czy mozliwe ze menadzer pakietow uzunie cos wymaganego ?
- teoretycznie tak

czy to sie zdarza ?
- nie :-).

[edit]
dlaczemu to sie nie zdarza ?
- pewnie istnieje wymog testowania pakietow na "swierzym" chroot (ale tego nie wiem, trzeba by matiego zaptyac ).

Ostatnio edytowany przez gindek (2014-05-05 09:15:17)


" Wojny przychodzą i odchodzą, a moi żołnierze są wieczni"


"Zbuduj mały, dziarski router z udostępnionych przez prowadzącego części od Kamaza?"

Offline

 

#10  2014-05-05 09:27:25

  yossarian - Szczawiożerca

yossarian
Szczawiożerca
Skąd: Shangri-La
Zarejestrowany: 2011-04-25

Re: Aktualizacja pakietów w testingu - jaki sposób najlepszy.

Bitels napisał(-a):

Panowie, podłącze się do pytania. Rozumiem, że te testing ma to do siebie, że czasami przy aktualizacji jakiś pakiet wpada, a czasami jakiś wypada. Jak coś ma wylecieć to powinno się sprawdzić czy jest nam potrzebny lub czy jego usunięcie nie spowoduje uszkodzenia systemu, ale jak to najprościej zrobić?

Tu potrzeba trochę doświadczenia.
Najprostsza odpowiedź to poczekać dzień lub dwa. Jeżeli pakiet ciągle jest przeznaczany do usunięcia, może oznaczać że ma miejsce jakaś migracja lub zmiana w zależnościach.
Można zajrzeć tutaj, poszukać informacji w internecie lub zwyczajnie założyć wątek na forum i zapytać.


Dla bardziej zaawansowanych lub chcących się czegoś nauczyć będzie świeży przykład z sida (w testingu takie rzeczy raczej rzadko się zdarzają):

Kod:

aptitude full-upgrade -d
Następujące pakiety zostaną zaktualizowane:  
  kmod{b} libefreet1 
2 pakietów aktualizowanych, 0 instalowanych, 0 do usunięcia i 0 nieaktualizowanych.
Do pobrania 103 kB archiwów. Zwolnione po rozpakowaniu: 4096 B.
Następujące pakiety mają niespełnione zależności:
 kmod : Narusza zależności: alsa-base (<= 1.0.25+3) ale zainstalowana jest wersja 1.0.25+3.
Następujące działania rozwiążą problemy z zależnościami:

     Usunięcie następujących pakietów:
1)     alsa-base                      
2)     volumeicon-alsa                



Zaakceptować rozwiązanie? [Y/n/q/?] q
Porzucono próby rozwiązania problemów z zależnościami.
Przerwane.

Wywalenie przez kmod pakietu alsa-base (i pośrednio volumeicon-alsa) brzmi poważnie i wypadałoby się temu przyjrzeć.
Kilkuminutowa inwestygacja prowadzi do takiego rozwiązania:
Istotne jest to:

kmod : Narusza zależności: alsa-base (<= 1.0.25+3) ale zainstalowana jest wersja 1.0.25+3.

Można przyjrzeć się uważniej pakietowi kmod:

aptitude changelog kmod napisał(-a):

kmod (17-2) unstable; urgency=medium

  * Build-Depend on gtk-doc-tools. (Closes: #747005)

— Marco d'Itri <md@linux.it>  Sun, 04 May 2014 20:38:42 +0200

kmod (17-1) unstable; urgency=medium

  * New upstream release.
  * Declared that kmod Breaks oss-compat 4. (Closes: #736748)
  * Merged the few useful directives from the alsa-base package and added
    a versioned Breaks to force it to be unistalled.


— Marco d'Itri <md@linux.it>  Thu, 01 May 2014 21:10:36 +0200

Widać, że tak powinno być i alsa-base przeznaczony jest do usunięcia.
I powiedzenie tego:
http://aptosid.com/index.php?name=PNphpBB2&file … ic&t=2783

Pozostaje jeszcze u mnie pakiet volumeicon-alsa, którego wersja w Debianie dawno nie była aktualizowana i w zależnościach ciągle ma alsa-base:

Kod:

apt-cache depends volumeicon-alsa
volumeicon-alsa
  Wymaga: libasound2
  Wymaga: libc6
  Wymaga: libgdk-pixbuf2.0-0
  Wymaga: libglib2.0-0
  Wymaga: libgtk2.0-0
  Wymaga: libnotify4
  Wymaga: libx11-6
  Wymaga: alsa-base
 |Sugeruje: alsamixergui
 |Sugeruje: aumix-gtk
 |Sugeruje: kmix
  Sugeruje: gnome-alsamixer
 |Sugeruje: notify-osd
 |Sugeruje: <xfce4-nofityd>
  Sugeruje: notification-daemon
    dunst
    mate-notification-daemon
    notify-osd
    plasma-widgets-workspace
    xfce4-notifyd
  W konflikcie z: volumeicon-alsa:i386

Można to zmienić w pliku /var/lib/dpkg/status usuwając z zależności alsa-base:

Package: volumeicon-alsa
Status: install ok installed
Priority: optional
Section: sound
Installed-Size: 187
Maintainer: Andrew Gainer <gainer.andrew@gmail.com>
Architecture: amd64
Source: volumeicon
Version: 0.4.6-2
Depends: libasound2 (>= 1.0.16), libc6 (>= 2.4), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.16.0), libgtk2.0-0 (>= 2.24.0), libnotify4 (>= 0.7.0), libx11-6
Suggests: alsamixergui | aumix-gtk | kmix | gnome-alsamixer, notify-osd | xfce4-nofityd | notification-daemon
Description: systray volume icon for alsa
This is a lightweight volume control that sits in your systray. This
version is compatible with ALSA.

lub samemu przebudować ten pakiet:

Kod:

apt-get source volumeicon-alsa
# apt-get build-dep volumeicon-alsa

Potem w pliku /volumeicon-0.4.6/debian/control należy podmienić:

Depends: ${misc:Depends}, ${shlibs:Depends}, alsa-base

na:

Depends: ${misc:Depends}, ${shlibs:Depends},

i zbudować poprawioną paczkę:

Kod:

dpkg-buildpackage -rfakeroot

i ją zainstalować:

Kod:

# dpkg -i volumeicon-alsa_0.4.6-2_amd64.deb

Można by było jeszcze podbić wersję żeby przy najbliższej aktualizacji nie została podmieniona na tą (powodującą problemy) z repozytorium, ale pewnie i tak zostanie zaraz poprawiona przez deweloperów Debiana (jeżeli już błąd został zgłoszony) i można tymczasowo zostawić jak jest:

Kod:

aptitude full-upgrade -d
Następujące pakiety zostaną zaktualizowane:       
  kmod{b} libefreet1 volumeicon-alsa 
3 pakietów aktualizowanych, 0 instalowanych, 0 do usunięcia i 0 nieaktualizowanych.
Do pobrania 144 kB archiwów. Zwolnione po rozpakowaniu: 4096 B.
Następujące pakiety mają niespełnione zależności:
 kmod : Narusza zależności: alsa-base (<= 1.0.25+3) ale zainstalowana jest wersja 1.0.25+3.
Następujące działania rozwiążą problemy z zależnościami:

     Usunięcie następujących pakietów:
1)     alsa-base                      
2)     volumeicon-alsa                



Zaakceptować rozwiązanie? [Y/n/q/?] n
Następujące działania rozwiążą problemy z zależnościami:

     Zatrzymanie bieżących wersji następujących pakietów:
1)     kmod [16-2 (now, testing)]                        



Zaakceptować rozwiązanie? [Y/n/q/?] n
Następujące działania rozwiążą problemy z zależnościami:

     Usunięcie następujących pakietów:                   
1)     alsa-base                                         

     Zatrzymanie bieżących wersji następujących pakietów:
2)     volumeicon-alsa [0.4.6-2 (now)]                   



Zaakceptować rozwiązanie? [Y/n/q/?] y
Następujące pakiety zostaną USUNIĘTE:
  alsa-base{a} 
Następujące pakiety zostaną zaktualizowane:
  kmod libefreet1 
2 pakietów aktualizowanych, 0 instalowanych, 1 do usunięcia i 1 nieaktualizowanych.
Do pobrania 103 kB archiwów. Zwolnione po rozpakowaniu: 138 kB.
Kontynuować? [Y/n/?] y

Offline

 

#11  2014-05-05 13:04:31

  Bitels - Użytkownik

Bitels
Użytkownik
Zarejestrowany: 2012-10-31

Re: Aktualizacja pakietów w testingu - jaki sposób najlepszy.

gindek i yossarian dzięki za wyczerpującą odpowiedź, ale puki co testing jeszcze mnie nie wystawił na próbę, jeszcze nie zdarzyło się by chciał mi coś potrzebnego wywalić i grzecznie się godzę na wszystkie zmiany jakie chce wprowadzić przy aktualizacjach.

yossarian naprawde fajnie to opisałeś i na mój gust mógł byś to wrzucić do FAQ na dugu bo chyba czegoś takiego nie ma.

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)