CARNet Debian 4.0 (etch) nadogradnja Grupa za izradu paketa paketi@carnet.hr Verzija %PKG_VERSION% CARNet Debian etch je treća generacija CARNet Debian distribucije i temelji se na Debian GNU/Linux etch distribuciji što je od sada vidljivo i iz inačice distribucije - CARNet Debian 4.0 etch. Ovaj priručnik opisuje postupak nadogradnje CARNet Debian distribucije sa inačice 2.1 sarge na inačicu 4.0 etch. Priručnik je zamišljen kao pomoć CARNetovim sistem inženjerima koji na svojim poslužiteljima imaju instaliran CARNet Debian i trebao bi obuhvatiti cjelokupan postupak nadogradnje, kao i tipične probleme na koje se može naići. Za tu svrhu pripremili smo paket carnet-upgrade inačice 4.0, koji se nalazi na CARNetovom FTP poslužitelju u sarge repozitoriju paketa. Backup Datotečni sustav

Prije bilo kakve veće instalacije ili nadogradnje, strogo se preporučuje izvršiti backup trenutnog stanja sustava, tako da u slučaju bilo kakvih problema bude moguć povratak na stanje prije nadogradnje. Nakon izvršenog backupa treba provjeriti mogu li se vratiti podaci s takve kopije, npr. vraćanjem sadržaja na neko drugo računalo, rezervni disk, ili barem probnim vraćanja nekoliko datoteka. Datotečni sustav se može backupirati na uobičajeni način, korištenjem tračnog uređaja (tar), ili drukčije (rsync). Za ovu svrhu preporučujemo backup svih podataka (level 0 backup). Također je potrebno osigurati ispravnost pohranjenih podataka, što znaci da baze podataka (OpenLDAP, MySQL, PostgreSQL) treba backupirati na ispravan način, jer backup datotečnog sustava za takve servise nije dovoljan i ne garantira ispravnost i konzistentnost podataka. Svaka baza podataka donosi zasebne programe koji omogućavaju izvoz sadržaja baze u oblik pogodan za backup.

OpenLDAP

Prije backupa OpenLDAP-a potrebno je spustiti FreeRADIUS i OpenLDAP servise. FreeRADIUS je potrebno ugasiti da bi CMU usluga nastavila funkcionirati za vrijeme backupa, jer lokalni FreeRADIUS daemon radi neispravno ukoliko je LDAP poslužitelj nedostupan. To radite na sljedeći način: # /etc/init.d/freeradius stop # /etc/init.d/slapd stop

Backup OpenLDAPa napravite koristeći naredbu slapcat: # slapcat -l /var/backups/slapcat.carnet-upgrade

Umjesto /var/backups/slapcat.carnet-upgrade možete upisati bilo koje ime za izlaznu datoteku. Nakon toga možete vratiti servise u radno stanje: # /etc/init.d/slapd start # /etc/init.d/freeradius start

Za više informacija o backupu OpenLDAP baze pogledajte man stranicu naredbe slapcat.

MySQL

Prilikom backupa MySQL baze, mysqld poslužitelj mora biti pokrenut. Backup možete izvršiti na sljedeći način: # mysqldump --all-databases \ >/var/backups/mysqldump.sql.carnet-upgrade

Za više informacija o backupu MySQL baze pogledajte .

PostgreSQL

Backup PostgreSQL baze podataka možete napraviti na sljedeći način: # su - postgres -c /usr/lib/postgresql/bin/pg_dumpall \ >/var/lib/postgres/postgres.sql.carnet-upgrade # mv /var/lib/postgres/postgres.sql.carnet-upgrade /var/backups

Za više informacija o backupu PostgreSQL baze podataka pogledajte .

Nadogradnja Prije početka

Prije nadogradnje na etch distribuciju, potrebno je izvršiti nadogradnju sarge distribucije na najsvježije pakete. To se najjednostavnije izvodi naredbom apt-get: # apt-get update # apt-get dist-upgrade

Paket carnet-upgrade

U paketu carnet-upgrade nalazi se istoimena skripta, koja služi za nadogradnju poslužitelja. Skripta carnet-upgrade zapisuje izvršene radnje u datoteku /var/log/carnet-upgrade.log, koju možete konzultirati u slučaju nepredviđenih problema da bi ustanovili do koje faze je skripta stigla s radom. Pored skripte, u paketu se nalazi i ova dokumentacija. Paket se instalira na uobičajen način: # apt-get update # apt-get install carnet-upgrade

Ovime ste instalirali paket koji je potreban za upgrade. Ukoliko paket nije dostupan, moguće je da nemate ispravne postavke za repozitorij CARNetovih paketa u /etc/apt/sources.list datoteci: deb http://ftp.carnet.hr/carnet-debian sarge main non-free

To je uobičajena konfiguracija CARNet Debian sarge repozitorija. Ako tog retka nema, dodajte ga i ponovite postupak instalacije carnet-upgrade paketa.

Postupak nadogradnje

Postupkom nadogradnje upravlja skripta carnet-upgrade. Skripta će korištenjem naredbe script u datoteku /var/log/carnet-upgrade.typescript zabilježiti ispis svih izvršenih naredbi. # carnet-upgrade Script started on Sun Mar 30 12:21:27 2008 CN: run_actions (main) started...

Nakon pokretanja skripte pojavljuje se pozdravni prozor koji podsjeća na potrebne predradnje: +-----------------------------------------------------------------+ | Nadogradnja CARNet Debian Sarge->Etch | +-----------------------------------------------------------------+ | PAZNJA! PAZNJA! | | | | Pokrenuli ste proceduru nadogradnje CARNet Debian distribucije. | | Podsjecamo Vas da prije ove skripte svakako pokrenete 'apt-get | | dist-upgrade'. Strogo preporucujemo i backup cijelog sustava, s | | posebnim naglaskom na instalirane baze podataka poput MySQL i | | PostgreSQL. | | | | Takodjer pazljivo procitajte dokumentaciju za ovu nadogradnju | | koja se nalazi u: | | | | /usr/share/doc/carnet-upgrade/ | | | | Zelite li nastaviti? | +-----------------------------------------------------------------+ | < Da > < Ne > | +-----------------------------------------------------------------+

Prije nadogradnje na etch, potrebno je izvršiti prijelaz sa Apache inačice 1.3 na Apache 2.0. Ukoliko je na sustavu još uvijek instaliran Apache 1.3 pojavit će se poruka: +-----------------------------------------------------------------+ | Nadogradnja CARNet Debian Sarge->Etch | +-----------------------------------------------------------------+ | | | Prije prelaska na Debian Etch potrebno je napraviti nadogradnju | | sa Apache 1.3 na Apache 2.0. | | | | Pokrenite: | | # apt-get update | | # apt-get install apache2-cn | | | | Nakon toga ponovno pozovite ovu skriptu. | | | +-----------------------------------------------------------------+ | < U redu > | +-----------------------------------------------------------------+

U sljedećem koraku biti će izvršena provjera dali su najvažniji servisi nadograđeni na najnovije inačice u sarge distribuciji. Ako neki od instaliranih servisa nije najnovija inačica, pojavit će se poruka: +-----------------------------------------------------------------+ | Nadogradnja CARNet Debian Sarge->Etch | +-----------------------------------------------------------------+ | | | Prije prelaska na Debian Etch potrebno je napraviti nadogradnju | | ovih paketa: | | amavisd-cn | | | | Pokrenite: | | # apt-get update | | # apt-get dist-upgrade | | ili: | | # apt-get update | | # apt-get install amavisd-cn | | | | Nakon toga ponovno pozovite ovu skriptu. | | | +-----------------------------------------------------------------+ | < U redu > | +-----------------------------------------------------------------+

Izvršite navedene upute, te ponovno pokrenite carnet-upgrade skriptu. Ako je sve uredno instalirano, skripta će otići na idući korak.

Slijedi provjera verzije trenutno pokrenutog kernela. Ako nije pokrenuta najnovija verzija potrebno je instalirati kernel-2.6-cn paket i ponovno pokrenuti računalo. +-----------------------------------------------------------------+ | Nadogradnja CARNet Debian Sarge->Etch | +-----------------------------------------------------------------+ | | | Prije prelaska na Debian Etch potrebno je napraviti nadogradnju | | na najnoviji grsec kernel. | | | | Pokrenite: | | # apt-get update | | # apt-get install kernel-2.6-cn | | # reboot | | | | Nakon toga ponovno pozovite ovu skriptu. | | | +-----------------------------------------------------------------+ | < U redu > | +-----------------------------------------------------------------+

U slijedećem koraku nudi se brisanje grafičkih sučelja koja su na poslužiteljskom računalu ponekad nepotrebno instalirana. +-----------------------------------------------------------------+ | Nadogradnja CARNet Debian Sarge->Etch | +-----------------------------------------------------------------+ | | | Na racunalu je pronadjena instalacija KDE, GNOME ili X Window | | System grafickog okruzenja koji nisu nuzni za normalan rad | | posluzitelja. Uklanjanje ovih aplikacija ubrzat ce proceduru | | nadogradnje i smanjiti zauzece diskovnog prostora. | | | | Zelite li UKLONITI navedene aplikacije? | | | +-----------------------------------------------------------------+ | < Da > < Ne > | +-----------------------------------------------------------------+

Standardna instalacija CARNet Debian sarge distribucije donosila je mnogo paketa koji nisu nužno potrebni za uobičajen rad poslužiteljskog računala. Brisanjem tih paketa ubrzati ćete proceduru nadogradnje, kao i smanjiti zauzeće diskovnog prostora. Svi paketi koji ostanu označeni se brišu nakon pritiska na tipku Enter. Oznaka se može maknuti pritiskom na tipku Space, i time spriječiti brisanje paketa. +-----------------------------------------------------------------+ | Nadogradnja CARNet Debian Sarge->Etch | +-----------------------------------------------------------------+ | Prethodna inacica distribucije, CARNet Debian 2, donosila je | | neke pakete koji nisu nuzni za normalan rad posluzitelja. | | Uklanjanje ovih aplikacija ubrzat ce proceduru nadogradnje i | | smanjiti zauzece diskovnog prostora. Ukoliko zelite zadrzati | | neku od navedenih aplikacija, iskljucite oznaku | | pored njenog imena. Sljedece aplikacije bit ce UKLONJENE: | | +-------------------------------------------------------------+ | | | [X] gobjc gpc gcj gij chill g77 | | | | [X] nessus | | | | [X] prelude piwi | | | | [X] snort | | | | [X] stari CN paketi | | | | [X] usbmgr | | | +-------------------------------------------------------------+ | +-----------------------------------------------------------------+ | < U redu > | +-----------------------------------------------------------------+

S obzirom na važnost podataka u LDAP imeniku, skripta radi backup OpenLDAP (slapd) baze. Nove inačice paketa bi trebale neometano nastaviti raditi sa postojećim sadržajem baze, pa ovaj backup možete obrisati kad nakon nadogradnje provjerite da LDAP radi ispravno. +-----------------------------------------------------------------+ | Nadogradnja CARNet Debian Sarge->Etch | +-----------------------------------------------------------------+ | Napravljen backup slapd baze u /var/backups/slapcat.cn4-upgrade.| | | | | | | | | | | | | | | | | | | | | +-----------------------------------------------------------------+ | < U redu > | +-----------------------------------------------------------------+

Skripta za nadogradnju će napraviti i backup direktorija /etc. To je korisno u slučaju da je potrebno vratiti neku staru konfiguracijsku datoteku. +-----------------------------------------------------------------+ | Nadogradnja CARNet Debian Sarge->Etch | +-----------------------------------------------------------------+ | Napravljen backup /etc direktorija u | | /var/backups/etc.cn4-upgrade.tar.gz. | | | | | | | | | | | | | | | | | +-----------------------------------------------------------------+ | < U redu > | +-----------------------------------------------------------------+

Slijedi instalacija /etc/apt/sources.list datoteke podešene za CARNet Debian etch i osvježavanje baze paketa. Eventualne dodatne repozitorije nakon nadogradnje možete kopirati iz stare sources.list datoteke, koja će biti spremljena kao /etc/apt/sources.list.cn4-upgrade. +------------------------------------------------------------------+ | Nadogradnja CARNet Sarge->Etch | +------------------------------------------------------------------+ | Novi sadrzaj datoteke /etc/apt/sources.list: | | | | # Osnovni Debian Etch paketi | | deb http://ftp.carnet.hr/debian etch main contrib non-free | | deb http://security.debian.org etch/updates main contrib non-free| | | | # CARNet Debian Etch paketi | | deb http://ftp.carnet.hr/carnet-debian carnet-etch main non-free | | | | # SRCE AAI paketi | | deb ftp://ftp.srce.hr/srce-debian/ srce-etch main | | | +------------------------------------------------------------------+ | < U redu > | +------------------------------------------------------------------+

Nakon osvježavanja baze paketa pokreće se skidanje nadogradivih paketa na lokalno računalo. To može trajati od nekoliko minuta do nekoliko sati, ovisno o brzini veze. Tipično trajanje na 2 Mbps linku je oko 40 minuta. Cijela nadogradnja velika je oko 300-700MB, ovisno o instaliranom softveru. U slučaju da nakon skidanja paketa nemate dovoljno prostora za fazu nadogradnje (oko 200MB), skripta će prekinuti s radom. Kad oslobodite dovoljno prostora na /var particiji, ponovo pokrenite carnet-upgrade.

Nakon ovoga kreće nadogradnja paketa novim inačicama. Prilikom procesa nadogradnje Debianov paketni sustav će postaviti niz upita vezanih za izmjenu konfiguracijskih datoteka. Radi optimalnog rada sustava nakon nadogradnje, preporuča se za određene upite odabrati odgovore koji nisu podrazumni (eng. default). Najčešće se radi o forsiranoj instalaciji novih inačica konfiguracijskih datoteka.

Navedeni redoslijed ne mora nužno pratiti redoslijed prilikom nadogradnje, kao što ni svi navedeni paketi ne moraju biti instalirani na sustavu. Pitanja za dolje navedene datoteke će biti upućena ili putem debconf sučelja, ili putem tekstualnog sučelja. Ukoliko ste vlastoručno mijenjali neku od tih datoteka, možete pogledati razlike između stare i nove datoteke (odgovor d, od eng. differences ­ razlike) i prenijeti izmjene u novu datoteku ukoliko je potrebno. To se može učiniti odabirom izbora z, koji će pokrenuti novu ljusku iz koje možete izvršiti željene izmjene, i nakon njih se s naredbom exit vratiti u postupak instalacije. Datoteke za koje preporučamo zamjenu novim inačicama su sljedeće (preporučeni izbor je install the package maintainer's version): /etc/amavis/* /etc/apache/* /etc/bind/named.conf.options /etc/clamav/* /etc/default/* /etc/dovecot/dovecot.conf /etc/init.d/* /etc/login.defs /etc/logrotate.d/* /etc/mysql/my.cnf /etc/ntp.conf /etc/pam.d/* /etc/php4/* /etc/postgresql/postmaster.conf /etc/postgresql/postgresql.conf /etc/proftpd.conf /etc/security/limits.conf /etc/squirrelmail/apache.conf /etc/sysctl.conf /etc/vsftpd.conf /etc/xinetd.conf

U zadnjem koraku, skripta za nadogradnju provjerava da li su svi osnovni servisi uredno pokrenuti, te prijavljuje eventualne probleme. Ispravno funkcioniranje servisa potrebno je provjeriti ručno kao i ispravan rad baza podataka (MySQL, PostgreSQL, OpenLDAP). +-----------------------------------------------------------------+ | Nadogradnja CARNet Sarge->Etch | +-----------------------------------------------------------------+ | Automatizirane ispravke su izvrsene. Provjerite jesu li svi | | vasi kriticni servisi ispravno konfigurirani i pokrenuti. | | | | Skripta nije uspjela detektirati da sljedeci servisi rade | | ispravno: | | | | ntpd | | | | | | | +-----------------------------------------------------------------+ | < U redu > | +-----------------------------------------------------------------+

Nakon uspješne nadogradnje možete obrisati arhive nadograđenih paketa koji zauzimaju diskovni prostor na /var particiji: # apt-get clean

Izvanredne situacije Premalo mjesta na / particiji

Ukoliko imate malu / particiju moguće je da instalacija kernel paketa neće uspjeti. Paket kernel-2.6-cn donosi čak četiri inačice kernela i zauzima preko 100 MB. Stare inačice kernela se ne brišu iz /boot direktorija što nakon nekoliko iteracija može dovesti do zapunjenja particije. Rješenje je brisanje starih nekorištenih kernela iz /boot direktorija i pripadnih modula iz /lib/modules direktorija. Detaljnije upute nalaze se na . Premalo mjesta na /var particiji

Ako nemate dovoljno mjesta na /var particiji, skripta neće moći skinuti potrebne pakete i nastaviti nadogradnju. To možete riješiti tako da direktorij /var/cache/apt/archives prebacite na neku drugu particiju. Kratka kuharica za slučaju korištenja /home particije je: # mv /var/cache/apt/archives /home/apt-archives # ln -s /home/apt-archives /var/cache/apt/archives

Time će se paketi skidati na /home particiju, na kojoj ima više mjesta. Nakon uspješne nadogradnje, vratite direktorij na staro mjesto: # rm /var/cache/apt/archives # mv /home/apt-archives /var/cache/apt/archives

Problemi sa apt-get

U slučaju greške u nekom paketu, može se dogoditi da prilikom instalacije apt-get prijavi grešku i instalacija se prekine. U tom slučaju, za početak treba dovršiti instalaciju već otpakiranih paketa: # dpkg --configure -a

Nakon toga treba pokušati ponovo pokrenuti apt-get za slučaj da je greška vezana za međuovisnost paketa: # apt-get -f install

Ukoliko apt-get zahtijeva deinstalaciju nekih paketa, možete ih instalirati nakon što ova naredba završi. Nakon toga možete ponovo pokrenuti carnet-upgrade skriptu. Ovaj postupak ponovite ako se desi greška kod instalacije nekog drugog paketa.

Napokon kraj

Ovo bi bila završna riječ ovog kratkog priručnika. Nadamo se da vam je pomogao prilikom nadogradnje poslužitelja vaše ustanove. Svi vaši komentari i sugestije su dobrodošli. Možete nas kontaktirati putem ili mailom na sistemac@carnet.hr.

Brzi pregled postupka nadogradnje

Kao prvo, backup svega!

Ima li 600MB slobodno na /var? A nakon apt-get clean? Ako nema može se iskoristiti neka druga particija na kojoj ima dovoljno mjesta (/home). # mv /var/cache/apt/archives /home/apt-archives # ln -s /home/apt-archives /var/cache/apt/archives

Instalacija paketa carnet-upgrade i pokretanje skripte za nadogradnju. # apt-get update # apt-get dist-upgrade # apt-get install carnet-upgrade # carnet-upgrade

Odgovoriti sa Y, odnosno install package maintainer's version za sljedeće konfiguracijske datoteke: /etc/amavis/* /etc/apache/* /etc/bind/named.conf.options /etc/clamav/* /etc/default/* /etc/dovecot/dovecot.conf /etc/init.d/* /etc/login.defs /etc/logrotate.d/* /etc/mysql/my.cnf /etc/ntp.conf /etc/pam.d/* /etc/php4/* /etc/postgresql/postmaster.conf /etc/postgresql/postgresql.conf /etc/proftpd.conf /etc/security/limits.conf /etc/squirrelmail/apache.conf /etc/sysctl.conf /etc/vsftpd.conf /etc/xinetd.conf

Ignorirati poruke o izmjenama u lilo.conf (ali provjeriti radi li nakon reboota).

Provjeriti dali je dovršena nadogradnja svih paketa, ta dali su neki bitni paketi pri tome obrisani. # dpkg --configure -a # apt-get -f install # apt-get install obrisani-paketi

Na kraju, provjeriti stanje servisa: DNS (host www.vasa-domena.hr localhost), slanje i primanje maila (sa stroja, sa LAN-a, izvana), Freeradius (spojiti se na CMU i provjeriti log datoteke), Apache (http://stroj i https://stroj), LDAP (http://stroj/ldap/), Webmail (https://stroj/webmail/), antivirus (poslati eicar.com datoteku i provjeriti mail log), POP3, IMAP FTP, SSH, MySQL, PostgreSQL aplikacije koje koriste te baze, i sve ostalo...

Obrisati arhive paketa korištene za nadogradnju. # apt-get clean

Ako ste premjestili /var/cache/apt/archives, možete ga vratiti na staro mjesto.