apt-cacher – dzialanie i instalacja

Bardzo przydatnym rozwiazaniem dla mojej domewej sieci komputerowej skladajacej sie z Linuxa glownie Ubuntu jest maly programik zwany apt-cacher.

apt-cacher

Dzieki temu programowi utrzymywanie systemow slatlo sie nie tyle co latwiejsze ale niewatpliwie o wiele szybsze. Sposob dzialania jest niezwykle prosty, na jednym komputerze ktory nazwiemy serwerem zainstalowalem apt-cacher a pozostale komputery w sieci przekierowalem by pobieraly oprogramowanie, dodatki i updates z tego wlasnie serwera zamiast ktoregos z serwerow dostepnych na internecie. Dzieki apt-cacher odciazamy nie tylko serwery internetowe ale rowniez ograniczamy obciazenie naszego lacza internetowego.

W sieciach z kilkoma komputerami nie ma to wiekszego znaczenia jednak kiedy mamy ich kilka i wiecej kazda instalacja tego samego oprogramowania na kilku maszynach jednoczesnie moze zupelnie zablokowac dostep do internetu dla innych uzytkownikow korzystajaych z tego samego lacza. Najwyrazniej widac korzysci w predkosci kiedy wykorzystamy apt-cacher do ‘upgrade’ calego systemu kiedy to przesiadka z Ubuntu 6.05 na 7.04 wynosi ponad 1 GB. Instalacja na pierwszym komputerze potrwa normalnie dlugo kazda nastepna bedzie bardzo szybko gotowa.

Apt-cacher jest niezwykle prostym rozwiazaniem w porownaniu z porownywalnym systemem stosowanym w sieciach z systemami Microsoft Windows. W swiecie Microsoftu nazywa sie to WUS dawniej SUS. WUS to skrot od Windows Update Server. Rozwiazanie Microsoftu jest bardzo rozbudowanym systemem, stosunkowo prostym w obsludze. Idea dzialania jest taka sama jak apt-chacher. Dodatkowo Microsoft WUS w kombinacji z Policy Manager i Active Directory jest nieporownywalnie solidnym i wysokowydajnym rozwiazaniem. Administracja odbywa sie poprzez Web-Interface gdzie mozemy zaaplikowac poszczegolne updates do poszczegolnych komputerow czy grup komputerow, mozemy tez sprawdzic co jest zainstalowane a co nie na danym komputerze lub ich grupie, zobaczyc statystyki dzialania i wiele wiecej.

Apt-cacher jest ograniczony w zasadzie do gromadzenia i dystrybucji pakietow oprogramowania w sieciach. Niewatpliwie mozna z apt-cacher wyciagnac wiecej poprzez skrypty i rozne segmentacje sieci jednak w wersji podstawowej mozemy gromadzic i dystrybuowac pakiety Linuxowe i zobaczyc skromne statystyki funkcjonowania naszego systemu.

Instalacjia apt-cacher (Ubuntu)

Na serwrze zainstaluj program apt-cacher komenda:

sudo apt-get install apt-cacher

.. do tego miejsca to bardzo proste teraz musimy zmodifikowac na wszystkich naszych systemach plik dzieki ktoremu kazdy system ‘wie’ gdzie mozna znalesc zrodla oprogramowania. W Ubuntu jest to plik /etc/apt/sources.list
Normalnie plik ten wyglada nastepujaco (kilka pierwszych linijek):

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://nl.archive.ubuntu.com/ubuntu/ feisty main restricted
deb-src http://bigblue:3142/nl.archive.ubuntu.com/ubuntu/ feisty main restricted## Major bug fix updates produced after the final release of the
## distribution.

deb http://nl.archive.ubuntu.com/ubuntu/ feisty-updates main restricted
deb-src http://nl.archive.ubuntu.com/ubuntu/ feisty-updates main restricted

… w tym pliku nalezy dokonac pewnych zmian (zaznaczonych tlustym drukiem)

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.

deb http://server:3142/nl.archive.ubuntu.com/ubuntu/ feisty main restricted
deb-src http://server:3142/nl.archive.ubuntu.com/ubuntu/ feisty main restricted
## Major bug fix updates produced after the final release of the
## distribution.

deb http://server:3142/nl.archive.ubuntu.com/ubuntu/ feisty-updates main restricted
deb-src http://server:3142/nl.archive.ubuntu.com/ubuntu/ feisty-updates main restricted

… gdzie server to nazwa lub adres IP naszego serwera na ktorym chcemy gromadzic i dystrybuowac paczki z programami. Numer po dwukropku (3142) to numer portu IP ktory chcemy wykorzystac do dystrybucji na naszej sieci, oczywiscie ten numer jak i wiele innych parametrow mozna zmienic w pliku konfiguracyjnym na serwerze na ktorym zainstalowalismy program apt-cacher.

Plik ten to /etc/apt-cacher/apt-cacher.conf tu mozemy dostosowac funkcjonowanie apt-cacher miedzy innymi parametry takie jak adresy systemow ktore moga korzystac z naszego serwera, miejsce na dysku gdzie beda przechowywane programy, polaczenie poprzez proxy server, szerokosc pasma jakie apt-cacher moze wykorzystwac by wymienic najwazniejsze.

By wszystko zadzialalo musimy na serwerze uruchomic usluge ate-cacher, w pliku /etc/default/apt-cacher musimy zmienic parametr autostart z 0 na 1. To znaczy ze usluga wystartuje automatycznie kiedy uruchomimy server.

AUTOSTART=1

a teraz uruchom usluge komenda;

sudo /etc/init.d/apt-cacher restart

Jezeli zmienilismy plik /etc/apt/sources.list na komputerach ktore maja korzystac z naszego servera mozemy na kazdym z nich lub na jednym z nich uruchomic proces “caching” czyli gromadzenia pakietow do dalszej re-dystrybucji za pomoca komendy;

sudo apt-get update

teraz paczki z internetowego serwera powinny gromadzic sie na naszym serwerze. By spradzic jak sprawny jest ten system w instalacji znajduje sie skrypt ktory generuje skromne statystyki cachera. Mozemy go uruchomic recznie za pomoca komendy

sudo /usr/share/apt-cacher/apt-cacher-report.pl

Standardowo skrypt ten uruchamia sie raz kazdego dnia o polnocy a statystyki mozemy zobaczyc poprzez przegladarke internetowa pod adresem:

http://nasz_server:3142/report

I to wszystko co dotyczy instalacji. Mam nadzieje ze apt-cacher doczeka sie GUI za pomoca ktorego bedzie latwo organizowac instalacje updates w wielkich sieciach.

Dodatkowe

Inne pokrewne programy to miedzy innymi Zero Install ktory moze byc tez ciekawym rozszezeniem do apt-cacher lub apt-proxy ktory oferuje podobne mozliwoaci jak apt-cacher. Do wsponianych programow apt-cron umozliwi nam sciaganie updates o okresronych porach dnia na przyklad w nocy a tym samym ograniczyc ruch na laczu internetowym za dnia.