Product SiteDocumentation Site

6.7. Utrzymywanie Aktualności Systemu

Debian jest dynamiczną dystrybucją, która nieustannie się zmienia. Większość zmian zawiera się w Testowym i Niestabilnym, ale nawet Stabilny jest od czasu do czasu aktualizowany, głównie w związku z poprawkami bezpieczeństwa. Niezależnie od wersji Debiana, pod którą działa system, przyjętą regułą jest utrzymywanie go w stanie zaktualizowanym tak, aby czerpać korzyści z najnowszych zmian i poprawek błędów.
Biorąc pod uwagę, że możliwe jest okresowe uruchamianie narzędzi do sprawdzania dostępnych aktualizacji i przeprowadzania uaktualnienia, takie powtarzalne zadanie jest uciążliwe, zwłaszcza w przypadku, gdy należy je wykonać na kilku maszynach. Na szczęście, podobnie do innych powtarzalnych zadań, może być częściowo zautomatyzowane, a w tym celu stworzono odpowiedni zestaw narzędzi.
Pierwszym ze wspomnianych narzędzi jest apticron, z pakietu o tej samej nazwie. Jego głównym działaniem jest codzienne uruchamianie skryptu (poprzez cron). Skrypt ten aktualizuje listę dostępnych pakietów i jeżeli któreś z zainstalowanych pakietów nie są w najnowszej wersji, wysyła wiadomość e-mail z listą tych pakietów oraz zmianami wprowadzonymi w ich nowych wersjach. Oczywiście pakiet ten jest kierowany głównie do użytkowników Debiana Stabilnego, ponieważ dla szybciej postępujących wersji Debiana codzienne e-maile byłyby bardzo długie. Kiedy sa dostępne aktualizacje, apticron pobiera je automatycznie. Nie instaluje ich — zadanie to nadal pozostaje dla administratora — ale posiadanie pobranych pakietów dostępnych lokalnie (w pamięci podręcznej APTa) przyspiesza pracę.
Administratorzy mający pod opieką kilka komputerów z pewnością docenią informacje o oczekujących uaktualnieniach, ale same uaktualnienia nadal są tak samo uciążliwe, jak były wcześniej, dlatego z pomocą przychodzi skrypt /etc/cron.daily/apt (z pakietu apt). Skrypt ten również uruchamiany jest codziennie (bez trybu interaktywnego) przez cron. W celu kontroli jego zachowania można użyć zmiennych konfiguracyjnych APTa (zapisanych w pliku, w katalogu /etc/apt/apt.conf.d/). Głównymi zmiennymi są:
APT::Periodic::Update-Package-Lists
Ta opcja pozwala ustawić częstotliwość (w dniach) odświeżania listy pakietów. Użytkownicy apticron mogą pominąć tą zmienną, ponieważ apticron sam ustawia to zadanie.
APT::Periodic::Download-Upgradeable-Packages
Podobnie, ta opcja wskazuje częstotliwość (w dniach), ale tym razem pobierania pakietów. Znowu, użytkownicy apticron nie będą jej potrzebować.
APT::Periodic::AutocleanInterval
Ta opcja udostępnia funkcję, której nie ma apticron. Kontroluje, jak często przestarzałe pakiety (te, do których nie odwołuje się już żadna dystrybucja) są usuwane z pamięci podręcznej APTa. Pozwala to utrzymać rozsądny rozmiar pamięci podręcznej APTa, dzięki czemu nie trzeba się już przejmować ręcznym wykonywaniem tego zadania.
APT::Periodic::Unattended-Upgrade
Kiedy włączona jest ta opcja, codzienny skrypt będzie uruchamiał unattended-upgrade (z pakietu unattended-upgrades), który — jak sama nazwa wskazuje — może zautomatyzować uaktualnianie niektórych pakietów (domyślnie zajmuje się tylko aktualizacjami bezpieczeństwa, ale można to dostosować w /etc/apt/apt.conf.d/50unattended-upgrades). Należy zauważyć, ze ta opcja może być ustawiona przy pomocy debconfa po uruchomieniu dpkg-reconfigure -plow unattended-upgrades.
Inne opcje pozwalają bardziej precyzyjnie kontrolować czyszczenie pamięci podręcznej. Chociaż nie są tutaj wymienione, to są opisane w skrypcie /etc/cron.daily/apt.
Wspomniane narzędzia sprawdzają się bardzo dobrze w przypadku serwerów, ale użytkownicy domowi częściej wybierają bardziej interaktywny system. Z tego powodu zadanie "Graphical desktop environment" instaluje gnome-packagekit. Pokazuje on ikonę, w obszarze powiadomień środowisk graficznych, kiedy są dostępne aktualizacje; kliknięcie tej ikony uruchamia gpk-update-viewer, uproszczony interfejs do wykonywania aktualizacji. Można przeglądać dostępne aktualizacje, czytać krótkie opisy powiązanych pakietów i odpowiadające wpisy changelog, a następnie po kolei zaznaczać, czy zastosować aktualizację, czy nie.
Uaktualnianie z użyciem gpk-update-viewer

Rysunek 6.3. Uaktualnianie z użyciem gpk-update-viewer