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  2012-02-25 07:23:57

  davidoski - Użytkownik

davidoski
Użytkownik
Skąd: Poznań
Zarejestrowany: 2007-04-17

[Solved] Update-notifier

Witam,

mam pytanie odnośnie update-notifier. Zainstalowałem tę paczkę razem z update-notifier-kde (używam KDE) i problem polega na tym, że po uruchomieniu systemu nie otrzymuję żadnego powiadomienia o aktualizacji. W ustawieniach update-managera jest dostępna opcja sprawdzania "raz dziennie", ale to nie rozwiązuje problemu, ponieważ pomimo dostępnych aktualizacji nie dostaję o nich powiadomienia.

Najbardziej wygodne byłoby gdyby update-notifier sprawdzał dostępność aktualizacji zaraz po uruchomieniu systemu, a potem np. co 3 godziny.

Czy da się to jakoś ustawić? Szukałem w necie i trafiłem na coś takiego:

http://www.debian.org/doc/manuals/securing-debian-h … pdate-desktop

ale nie wiem co trzeba ustawić, żeby takie zachowanie uzyskać.

Ostatnio edytowany przez davidoski (2012-02-28 06:44:41)

Offline

 

#2  2012-02-25 14:30:58

  Minio - Użyszkodnik

Minio
Użyszkodnik
Skąd: Poznań, Polska
Zarejestrowany: 2007-12-22
Serwis

Re: [Solved] Update-notifier

Z tego co widzę, w tym update-notifier i jego okolicach panuje taki burdel, że aż strach się za to zabierać.

Na razie udało mi się ustalić tyle:

- update-notifier-kde wyświetla powiadomienie o oczekujących na aktualizację pakietach w obszarze powiadomień KDE. Nie oferuje możliwości podjęcia jakiejś akcji, np. instalacji tych pakietów. Trzeba sobie samemu uruchomić menedżer pakietów. Po zainstalowaniu będzie się sam uruchamiał wraz ze startem KDE i pokazywał powiadomienie po dwóch minutach. Nie można nic z tym zrobić, liczba ta jest wpisana na sztywno w kod źródłowy (src/kingston_update_notifier_module.cpp:40 i 42).

Ponadto u-n-k śledzi pliki /var/lib/update-notifier/dpkg-run-stamp, /var/lib/update-notifier/updates-available i /var/lib/apt/periodic/update-success-stamp. Co sekundę sprawdza ich stan, i jeżeli ulegnie on zmianie, wyświetla powiadomienie w KDE.

Pliki /var/lib/update-notifier/dpkg-run-stamp i /var/lib/update-notifier/updates-available (ten drugi o ile istnieje) są aktualizowane po każdym uruchomieniu dpkg (odpowiada za to plik /etc/apt/apt.conf.d/99update-notifier), zaś plik /var/lib/apt/periodic/update-success-stamp jest aktualizowany po każdej aktualizacji listy pakietów (odpowiada za to plik /etc/apt/apt.conf.d/15update-stamp). Wszystkie te pliki pochodzą z pakietu update-notifier-common).

Jest jeszcze program apt-check (/usr/lib/update-notifier/apt-check) który mówi u-n-k ile pakietów można zaktualizować. Aby on się w ogóle uruchomił, trzeba mieć zainstalowany program lsb_release (z pakietu lsb-release), który nie jest podany w zależnościach. Zostało to zgłoszone ponad rok temu (#609695), ale opiekun do tej pory nic z tym nie zrobił. Wg mnie to najlepiej świadczy o jakości tego pakietu.

Jak widać, u-n-k wyświetli powiadomienie, ale po aktualizacji listy pakietów albo wywołaniu dpkg (instalacja/usunięcie jakiegoś pakietu).

- Jest jeszcze program update-notifier. On oferuje bardzo podobne funkcje co wspomniany wyżej update-notifier-kde, ale działa trochę inaczej.

Po pierwsze, nie tylko wyświetla informacje w obszarze powiadomień, ale także wyświetla ikonkę w zasobniku systemowym. Po kliknięciu na nią, zapyta o hasło administratora i uruchomi program update-manager-gnome. Ten z kolei chyba uruchomi Synaptica, ale nie chciało mi się już tego sprawdzać.

Nie chciało mi się też sprawdzać jak konkretnie działa ten update-notifier. Na pewno uruchamia znany już apt-check w celu sprawdzenia, ile ma aktualizacji do zainstalowania.

Natomiast sam również nie odświeża listy pakietów APT. Piszą o tym w pliku README:

This is a small tray icon that backgrounds itself and checks for
upgrades. It must be ensured by other means (like a cron job) that a
regular "apt-get update" is done.

update-notifier powinien się sam uruchamiać przy starcie systemu (odpowiada za to plik /etc/xdg/autostart/update-notifier.desktop), ale w przypadku KDE tego nie robi. Jakiś idiota we wspomnianym pliku umieścił wpis NotShowIn=KDE;. Możesz go po prostu usunąć z tego pliku (przy czym będziesz musiał to zrobić ponownie po najbliższej aktualizacji update-notifier; co pewnie nigdy nie nastąpi, bo Canonical już ten program porzuciło a wątpię żeby komukolwiek w Debianie chciało się tym zajmować). Albo możesz sobie tak skonfigurować KDE, żeby uruchamiało na starcie program update-notifier. Bez żadnych argumentów ani niczego podobnego.

- czyli ani update-notifier, ani update-notifier-kde nie potrafią same odświeżyć listy pakietów APT, czyli zrobić tego, co od nich oczekujesz. Potrafi to jednak zrobić cron. Odpowiada za to skrypt /etc/cron.daily/apt z pakietu apt. Globalny crontab (/etc/crontab) zawiera linijkę, która go uruchamia:

Kod:

25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )

Konkretniej: lista pakietów będzie odświeżana codziennie o 6:25, chyba że zainstalowany jest anacron. Anacron to cron, który w miarę działa nawet wtedy, gdy komputer nie jest włączony 24 godziny na dobę. W /etc/anacrontab jest wpis który będzie odświeżał listę pakietów codziennie, mniej więcej w pięć minut po uruchomieniu komputera.

Ja widzę dwie możliwości:
1. wrzuć do /etc/cron.hourly skrypt, który będzie odświeżał listę pakietów APT. Możesz go sobie skopiować z /etc/cron.daily.

2. Wrzuć do /etc/rc.local (skrypt uruchamiany na samym końcu wszystkich skryptów uruchomieniowych) skrypt, który w nieskończonej pętli będzie najpierw odświeżał listę pakietów APT, a potem będzie czekał te trzy godziny czy ile tam sobie chcesz. Nie jest to może zbyt eleganckie, ale mam wrażenie że cały ten update-notifier i reszta są mało eleganckie.

Offline

 

#3  2012-02-25 14:40:13

  panjandrum - Użytkownik

panjandrum
Użytkownik
Skąd: Lublin/Kraków
Zarejestrowany: 2009-03-20

Re: [Solved] Update-notifier

Ja od siebie dodam, że jest jeszcze takie narzędzie jak cron-apt.


obshutdown - Opedbox shutdown dialog

Offline

 

#4  2012-02-25 15:16:15

  davidoski - Użytkownik

davidoski
Użytkownik
Skąd: Poznań
Zarejestrowany: 2007-04-17

Re: [Solved] Update-notifier

Dziękuję za tak wyczerpującą odpowiedź. Naprawdę doceniam.

Usunąłem z systemu update-notifier ponieważ jego ikona w trayu pojawiała się i nie chciała znikać.
Zostawiłem tylko update-notifier-kde, który zdaje się działać prawidłowo - pokazuje okienko powiadomienia o aktualizacjach, gdy tylko manualnie wydam komendę aptitude update - czyli dokładnie tak jak napisałeś potrzebuję skryptu, który będzie okresowo odświeżał listę pakietów, a u-n-k wyświetli wtedy powiadomienie.

Spróbuję najpierw 1. metody. Jeśli dobrze rozumiem, mam skopiować plik /etc/cron.daily/apt do /etc/cron.hourly

I to wystarczy?

Offline

 

#5  2012-02-25 15:26:17

  fervi - Użytkownik

fervi
Użytkownik
Zarejestrowany: 2010-03-14

Re: [Solved] Update-notifier

Ogólnie powinieneś mieć update-manager-core update-manager-gnome. Nie pamiętam, ale chyba nie ma dla KDE update-manager'a (Co może być problemem)

Fervi

PS. w KDE odpowiadał (Kubuntu) za to Kpackagekit i Muon

Offline

 

#6  2012-02-25 15:33:09

  davidoski - Użytkownik

davidoski
Użytkownik
Skąd: Poznań
Zarejestrowany: 2007-04-17

Re: [Solved] Update-notifier

Zależy mi tylko na samym powiadomieniu, bez opcji graficznego uruchomienia update-managera czy synaptica. Wystarczy mi sam "dymek" z informacją o nowych aktualizacjach, a sam proces aktualizacji przeprowadzę już przez aptitude full-upgrade.

Ostatnio edytowany przez davidoski (2012-02-25 15:33:38)

Offline

 

#7  2012-02-25 15:41:33

  Minio - Użyszkodnik

Minio
Użyszkodnik
Skąd: Poznań, Polska
Zarejestrowany: 2007-12-22
Serwis

Re: [Solved] Update-notifier

davidoski napisał(-a):

Spróbuję najpierw 1. metody. Jeśli dobrze rozumiem, mam skopiować plik /etc/cron.daily/apt do /etc/cron.hourly

Albo zrobić dowiązanie symboliczne, co będzie nawet lepszym pomysłem niż kopiowanie.

Ten skrypt oferuje cały szereg opcji konfiguracyjnych. Są one opisane na samym początku pliku, jeśli Cię interesują. Podstawowe z nich są zawarte w pliku /etc/apt/apt.conf.d/99update-notifier z pakietu update-notifier-common.

Jeżeli te wszystkie opcje Cię nie interesują, to możesz utworzyć najprostszy na świecie skrypt w którym umieścisz tylko:

Kod:

#!/bin/sh
aptitude update

Aha — skrypty w cron.hourly są uruchamiane o 17 minucie każdej godziny.

davidoski napisał(-a):

I to wystarczy?

O ile dobrze zrozumiałem kod źródłowy i nie pominąłem żadnego istotnego fragmentu — powinno. Sam nie sprawdzałem.

Offline

 

#8  2012-02-25 15:52:50

  davidoski - Użytkownik

davidoski
Użytkownik
Skąd: Poznań
Zarejestrowany: 2007-04-17

Re: [Solved] Update-notifier

OK, w takim razie utworzyłem plik ze skryptem w katalogu /etc/cron.hourly:

Kod:

#touch aptitude-update

wkleiłem do niego zawartość:

Kod:

#!/bin/sh
aptitude update

i nadałem prawa wykonywalności

Kod:

#chmod +x aptitude-update

Ciekawe czy wyskoczy powiadomienie :)

edit: 2012-02-26

Dziś pojawiło się powiadomienie, ale po tym jak zainstalowałem pakiet polonizacji LibreOffice, więc to chyba jeszcze nie to. Zaczekam jeszcze dzień-dwa i spróbuję powstrzymać się od instalacji czegokolwiek.

Ostatnio edytowany przez davidoski (2012-02-26 06:43:07)

Offline

 

#9  2012-02-27 18:09:31

  davidoski - Użytkownik

davidoski
Użytkownik
Skąd: Poznań
Zarejestrowany: 2007-04-17

Re: [Solved] Update-notifier

Okazuje się jednak, że wciąż jest coś nie tak. Wygląda na to, że samo "uptitude update" nie powoduje wyświetlenia powiadomienia. Powiadomienie pokazało mi się dopiero, kiedy (dla testu) zainstalowałem jakiś pakiet. Okienko wyskakuje pod sam koniec konfiguracji nowego pakietu. Nie wiem jaka komenda jeszcze dodatkowo tu jest potrzebna, ale najwyraźniej sam "update" listy pakietów nie wystarcza.

http://img337.imageshack.us/img337/4196/zrzutekranu2u.th.jpg

Offline

 

#10  2012-02-27 22:46:52

  Minio - Użyszkodnik

Minio
Użyszkodnik
Skąd: Poznań, Polska
Zarejestrowany: 2007-12-22
Serwis

Re: [Solved] Update-notifier

No tak. Wychodzi na to, że aptitude olewa APT::Update::Post-Invoke z /etc/apt/apt.conf.d/15update-stamp. Zostało to zgłoszone… prawie 4 lata temu (#476399). Wstępnie zostało poprawione kilka dni po wydaniu nowej wersji aptitude (0.6.5). Musisz poczekać na nowszą wersję aptitude.

Albo uruchamiać apt-get update zamiast aptitude. Po puszczeniu apt-get u mnie u-n-k ładnie wyświetla komunikat.

Offline

 

#11  2012-02-27 23:01:14

  ArnVaker - Kapelusznik

ArnVaker
Kapelusznik
Skąd: Midgard
Zarejestrowany: 2009-05-06

Re: [Solved] Update-notifier

Faktycznie aptitude update nie jest zbyt udane. Też używam zamiast niego apt-get update odkąd przy okazji jakiegoś wątku okazało się, że aptitude update nie informuje o błędach przy pobieraniu list pakietów i przez to użyciu ich starych wersji.

Offline

 

#12  2012-02-28 00:22:41

  davidoski - Użytkownik

davidoski
Użytkownik
Skąd: Poznań
Zarejestrowany: 2007-04-17

Re: [Solved] Update-notifier

A to ciekawych rzeczy można się dowiedzieć przy okazji takiej wydawałoby się drobnostki. Chyba nic mi się nie namiesza jeśli do odświeżania list pakietów będę używał apt-get, a do instalacji/deinstalacji aptitude?

Tak swoją drogą to przy okazji tej testowej instalacji vim zauważyłem, że aptitude nie odinstalowuje dokładnie wszystkiego co zainstalował, chyba że jest to akurat przypadłość tylko tego jednego pakietu. Przy instalacji vim jest instalowane dodatkowo vim-runtime, natomist przy odinstalowaniu usuwane tylko vim.

Offline

 

#13  2012-02-28 00:30:14

  ArnVaker - Kapelusznik

ArnVaker
Kapelusznik
Skąd: Midgard
Zarejestrowany: 2009-05-06

Re: [Solved] Update-notifier

davidoski napisał(-a):

Chyba nic mi się nie namiesza jeśli do odświeżania list pakietów będę używał apt-get, a do instalacji/deinstalacji aptitude?

No raczej nie… /me w każdym razie robi tak od dawna.

davidoski napisał(-a):

Tak swoją drogą to przy okazji tej testowej instalacji vim zauważyłem, że aptitude nie odinstalowuje dokładnie wszystkiego co zainstalował, chyba że jest to akurat przypadłość tylko tego jednego pakietu. Przy instalacji vim jest instalowane dodatkowo vim-runtime, natomist przy odinstalowaniu usuwane tylko vim.

To kwestia konfiguracji, więcej w tym wątku: http://forum.dug.net.pl/viewtopic.php?id=19553.

U mnie w podanym przez Ciebie przykładzie usuwa ładnie wszystkie:

Kod:

# aptitude install vim
Następujące NOWE pakiety zostaną zainstalowane:
  vim vim-common{a} vim-runtime{a} 
0 pakietów aktualizowanych, 3 instalowanych, 0 do usunięcia i 0 nieaktualizowanych.
Do pobrania 7442 kB archiwów. Zajęte po rozpakowaniu: 25,0 MB.
Kontynuować? [Y/n/?]

Kod:

# aptitude purge vim
Następujące pakiety zostaną USUNIĘTE:        
  vim{p} vim-common{u} vim-runtime{u} 
0 pakietów aktualizowanych, 0 instalowanych, 3 do usunięcia i 0 nieaktualizowanych.
Do pobrania 0 B archiwów. Zwolnione po rozpakowaniu: 25,0 MB.
Kontynuować? [Y/n/?]

(sam pewnie użyłbym polecenia aptitude purge vim~i po prostu)

==================

U siebie nie mam pliku /etc/apt/apt.conf.d/01autoremove + taki konfig:

Kod:

APT::Install-Recommends "false";
APT::Install-Suggests "false";
APT::AutoRemove::RecommendsImportant "false";
APT::AutoRemove::SuggestsImportant "false";

Jednak na pewno nie każdemu będzie to odpowiadać, także nie polecam. ;)

Offline

 

#14  2012-02-28 00:52:49

  davidoski - Użytkownik

davidoski
Użytkownik
Skąd: Poznań
Zarejestrowany: 2007-04-17

Re: [Solved] Update-notifier

Coraz ciekawszych rzeczy się dowiaduję. W ogóle dużo rzeczy, które wydawałoby się, że powinny być domyślnie ustawione, nie są. Mam już w pliku z notatkami "poinstalacyjnymi" ładnych parę stron wszelakich zapisków.


Edit: 2012-02-28

Radośnie śpieszę donieść, że dziś rano mym oczom ukazał się komunikat o aktualizacji, całkowicie bez ingerencji z mojej strony. A więc pełen sukces! Dziękuję kolegom za fachową pomoc. To niesamowite jakiej wiedzy wymagała ta drobna zgoła, acz pożyteczna sprawa.

Ostatnio edytowany przez davidoski (2012-02-28 06:50:27)

Offline

 

#15  2012-02-29 08:27:37

  Minio - Użyszkodnik

Minio
Użyszkodnik
Skąd: Poznań, Polska
Zarejestrowany: 2007-12-22
Serwis

Re: [Solved] Update-notifier

ArnVaker napisał(-a):

Faktycznie aptitude update nie jest zbyt udane. Też używam zamiast niego apt-get update odkąd przy okazji jakiegoś wątku okazało się, że aptitude update nie informuje o błędach przy pobieraniu list pakietów i przez to użyciu ich starych wersji.

U mnie z kolei apt-get po update nie chce powiedzieć, czy coś należy dalej zrobić:

Kod:

# apt-get update
…
Pobrano 8405 kB w 43s (194 kB/s)
Czytanie list pakietów... Gotowe
# aptitude full-upgrade 
Następujące pakiety zostaną zaktualizowane:
  gimp gimp-data libfribidi0 libgimp2.0 libjavascriptcoregtk-1.0-0 libjavascriptcoregtk-3.0-0 libpng12-0 libsamplerate0 libvariable-magic-perl 
  libwebkitgtk-1.0-0 libwebkitgtk-1.0-common libwebkitgtk-3.0-0 libwebkitgtk-3.0-common pdftk 
14 pakietów aktualizowanych, 0 instalowanych, 0 do usunięcia i 3 nieaktualizowanych.
Do pobrania 38,4 MB archiwów. Zajęte po rozpakowaniu: 908 kB.
Kontynuować? [Y/n/?]

aptitude update na końcu mówił, ile pakietów jest nowych a ile może zostać zaktualizowanych (i jak te liczby się zmieniły w stosunku do poprzedniego update). Dzięki temu wiedziałem, czy uruchamiać full-upgrade czy nie ma sensu.

Osobiście zostanę przy aptitude, chyba że można coś w powyższym zrobić. Wygodne to było.

Offline

 

#16  2012-04-09 17:22:03

  Minio - Użyszkodnik

Minio
Użyszkodnik
Skąd: Poznań, Polska
Zarejestrowany: 2007-12-22
Serwis

Re: [Solved] Update-notifier

Minio napisał(-a):

No tak. Wychodzi na to, że aptitude olewa APT::Update::Post-Invoke z /etc/apt/apt.conf.d/15update-stamp. Zostało to zgłoszone… prawie 4 lata temu (#476399). Wstępnie zostało poprawione kilka dni po wydaniu nowej wersji aptitude (0.6.5). Musisz poczekać na nowszą wersję aptitude.

Używanie aptitude w duecie z update-notifier powinno już być bezpieczne. Z /usr/share/doc/aptitude/NEWS aptitude 0.6.6, które dzisiaj trafiło do testinga:

Kod:

  * [all]: Update package lists using ListUpdate (from libapt-pkg).
           Now the process is identical to apt-get and other tools,
           reporting errors more correctly and running the APT::Update
           hooks.

(Polecam lekturę całości — wprowadzono całkiem sporo zmian).

Offline

 

#17  2012-04-09 18:06:40

  davidoski - Użytkownik

davidoski
Użytkownik
Skąd: Poznań
Zarejestrowany: 2007-04-17

Re: [Solved] Update-notifier

Ciekawe, sprawdzę przy najbliższej aktualizacji. A tak swoją drogą to gdzieś ty to tam wyszukał... :)

Offline

 

#18  2012-04-09 18:51:00

  Minio - Użyszkodnik

Minio
Użyszkodnik
Skąd: Poznań, Polska
Zarejestrowany: 2007-12-22
Serwis

Re: [Solved] Update-notifier

W changelogu (tym dostępnym przez polecenie aptitude changelog) napisali, żeby „See NEWS for details.”. Więc zajrzałem ;) .

Ja często przy aktualizacji interesujących mnie aplikacji sprawdzam w changelogu, czego mogę się spodziewać.

Offline

 

#19  2012-04-10 07:21:49

  davidoski - Użytkownik

davidoski
Użytkownik
Skąd: Poznań
Zarejestrowany: 2007-04-17

Re: [Solved] Update-notifier

Faktycznie, działa teraz z aptitude. Fajnie, że to poprawili.

Offline

 

Stopka forum

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