Aktualizacja systemu
Proces aktualizacji systemu można podzielić na dwa etapy: pobranie informacji o dostępności określonych pakietów w określonych wersjach oraz pobranie tych pakietów i ich zainstalowanie. Dzięki temu możemy sami zdecydować kiedy i co aktualizujemy.
Aktualizacja bazy danych o pakietach
Aktualizację informacji o pakietach dostępnych do instalacji możemy dokonać przy pomocy polecenia apt-get update . Wtedy na podstawie listy serwerów dostępnych w pliku etc/apt/source.list następuje aktualizacja lokalnego pliku dostępnych pakietów.
W przypadku wykorzystywania CD-ROMów, (np. kupiliśmy gazetę z aktualizacją dystrybucji) należy po kolei wkładać je do napędu cd-rom i wydawać polecenie apt-cdrom add . Program sam podmountuje napęd, zczyta dostępne pakiety a następnie doda je do spisu pakietów.
Aktualizacja zainstalowanych pakietów
Jeżeli już mamy nową wersję spisu dostępnych pakietów nadchodzi pora na sprawdzenie co możemy zaktualizować. Przyda nam się tutaj program o nazwie apt-show-versions z parametrem -u, dzięki któremu poznamy nazwy pakietów do aktualizacji, np.:
debian:/# apt-show-versions -u procps/stable upgradeable from 1:2.0.7-8 to 1:2.0.7-8.woody1 debianutils/stable upgradeable from 1.16 to 1.16.2woody1 console-data/stable upgradeable from 1999.08.29-24 to 1999.08.29-24.2 gnupg/stable upgradeable from 1.0.6-3 to 1.0.6-4 util-linux/stable upgradeable from 2.11n-4 to 2.11n-7 procmail/stable upgradeable from 3.22-4 to 3.22-5 mount/stable upgradeable from 2.11n-4 to 2.11n-7 bsdutils/stable upgradeable from 1:2.11n-4 to 1:2.11n-7 nano/stable upgradeable from 1.0.6-2 to 1.0.6-3 zlib1g/stable upgradeable from 1:1.1.4-1 to 1:1.1.4-1.0woody0
Aktualizację oprogramowania wykonujemy przy pomocy komendy apt-get upgrade. Jest ona niezależnie od źródła wykorzystywanych pakietów. Poradzi sobie ona z serwerami ftp czy płytami CD-ROM.
dns:/etc# apt-get upgrade Reading Package Lists... Done Building Dependency Tree... Done 10 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded. Need to get 2846kB of archives. After unpacking 159kB will be used. Do you want to continue? [Y/n] ....
Skrypt informujący o potrzebie aktualizacji oprogramowania
Gdy zarządzamy kilkoma serwerami (lub gdy jesteśmy bardzo zajęci) przydatny może się okazać prosty skrypt w bashu, który przypomni nam o potrzebie aktualizacji oprogramowania:
#! /bin/sh # nazwa i miejsce polozenia: /srbin/update.sh UPGRADE=`apt-show-versions -u` if [ "$UPGRADE" != "" ] then echo "potrzebna aktualizacja!" /usr/bin/apt-show-versions -u | mail -s "Prosba o aktualizacje " admin@mojadomena.pl fi
Wygodnie jest go wywoływać z crona co jakiś czas. Na swoich serwerach mam dokonany wpis do pliku /etc/crontab następującej treści:
25 5 * * * root /srbin/update.sh
Dzięki niemu codziennie rano, jeżeli zachodzi taka konieczność, jestem informowany o potrzebie aktualizacji systemów.
Nie samą wersją stable człowiek żyje
Zmiana wersji dystrybucji
Czasem mamy potrzebę zmiany wersji dystrybucji. Sprawa jest bardzo prosta gdy chcemy zmienić wersję stable na testing lub unstable albo wersję testing na unstable. Powinniśmy najpierw dopisać do pliku /etc/apt/sources.list nowe źródła pakietów, zaktualizować listy dostępnych pakietów a następnie wydać polecenie: apt-get dist-upgrade.
Trzymanie wymieszanego systemu
Często się zdarza iż korzystamy z wymieszanego systemu, tzn. część pakietów mamy z dystrybucji stabilnej a część z testowej lub analogicznie: część z testowej a część z niestabilnej. Aby taki system utrzymać w miarę na chodzie, należy do pliku konfiguracyjnego apt ( /etc/apt/apt-conf) dopisać następującą dyrektywę:
APT::default-releaise wersja_dystrybucji;
gdzie wersja dystrybucji to stable, testing lub unstable.
Pozwoli to z dostępnej listy pakietów wybrać domyślne interesującą nas wersje programów.
Wybór najszybszego serwera z pakietami
Do tego celu możemy użyć następujących programów: netselect, netselect-apt lub apt-spy
Apt-get i firewall
W przypadku korzystania z repozytoriów udostępnianych przez protokół ftp może zaistnieć problem ściągania pakietów (program apt-get zatrzymuje się podczas pobierania pakietów i nie może pobrać pakietu). Należy wtedy lekko przekonfigurować samego apt aby korzystał z aktywnej metody ftp. W tym celu do pliku /etc/apt.conf dodajemy poniższy wpis:
Acquire { // FTP method configuration ftp { /* Passive mode control, proxy, non-proxy and per-host. Pasv mode is prefered if possible */ Passive "no"; }; };
Spis mirrorów z pakietami
Spis mirrorów pakietów Debiana można znaleźć pod adresem http://www.debian.org/mirror/list .