From ee79cec573d44cfe51ce58a163c181b7048efc06 Mon Sep 17 00:00:00 2001 From: Valentin Vidic Date: Wed, 6 Feb 2008 18:06:18 +0100 Subject: [PATCH] Documentation update. Text messages update. Protect sensitive backup files. --- doc/carnet-upgrade.sgml | 594 +++++++++++++++++++++++++--------------- src/data.sh | 2 +- src/files/etc/apt/sources.list | 4 +- src/functions.sh | 43 ++- src/messages.sh | 16 +- 5 files changed, 416 insertions(+), 243 deletions(-) diff --git a/doc/carnet-upgrade.sgml b/doc/carnet-upgrade.sgml index 83094db..307ee55 100644 --- a/doc/carnet-upgrade.sgml +++ b/doc/carnet-upgrade.sgml @@ -1,31 +1,27 @@ - + CARNet Debian 4.0 (etch) nadogradnja - Zoran Dželalija - - - Ivan 'ico' Rako - - - Valentin Vidić + Grupa za izradu paketa + paketi@carnet.hr Verzija 4.0.0 Ovaj priručnik opisuje postupak nadogradnje CARNet Debian - distribucije sa verzije 2.1 (sarge) na verziju 4.0 (etch). - CARNet Debian 4.0 (etch) je treća generacija CARNet Debian - distribucije i temelji se na Debian GNU/Linux 4.0 (etch) distribuciji. - 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 verzije 4.0, koji se nalazi na CARNetovom FTP - poslužitelju u Sarge repozitoriju paketa. + distribucije sa inačice 2.1 sarge na inačicu 4.0 + etch. CARNet Debian etch je treća generacija + CARNet Debian distribucije i temelji se na Debian GNU/Linux + etch distribuciji. 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. @@ -43,14 +39,15 @@ 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 (dump/restore, tar...), ili drukčije. 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 - konzistenciju podataka. Svaka baza podataka donosi zasebne programe - koji omogućavaju izvoz sadržaja baze u oblik pogodan za backup. + 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.

@@ -72,12 +69,12 @@ Backup OpenLDAPa napravite koristeći naredbu slapcat: -# slapcat -l /var/backups/slapcat.cn-upgrade +# slapcat -l /var/backups/slapcat.carnet-upgrade

- Umjesto /var/backups/slapcat.cn-upgrade možete upisati + Umjesto /var/backups/slapcat.carnet-upgrade možete upisati bilo koje ime za izlaznu datoteku. Nakon toga možete vratiti servise u radno stanje: @@ -95,11 +92,11 @@ MySQL

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

@@ -116,8 +113,8 @@ # su - postgres -c /usr/lib/postgresql/bin/pg_dumpall \ - >/var/lib/postgres/postgres.sql.cn-upgrade -# mv /var/lib/postgres/postgres.sql.cn-upgrade /var/backups + >/var/lib/postgres/postgres.sql.carnet-upgrade +# mv /var/lib/postgres/postgres.sql.carnet-upgrade /var/backups

@@ -135,10 +132,9 @@ Prije početka

- Prije instalacije paketa za nadogradnju i same nadogradnje, potrebno - je izvršiti nadogradnju tekuće inačice distribucije na najsvježije - pakete. To se najjednostavnije izvodi sa naredbom - apt-get: + 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 @@ -147,15 +143,15 @@

- Paket carnet-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 + 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 - kompletna dokumentacija. Paket se instalira na uobičajen način: + ova dokumentacija. Paket se instalira na uobičajen način: # apt-get update @@ -164,48 +160,42 @@

- Time ste instalirali paket koji je potreban za upgrade. Ukoliko - paket nije dostupan, postoji mogućnost da nemate ispravne postavke - za repozitorij CARNetovih paketa u - /etc/apt/sources.list datoteci, koja treba sadržavati - sljedeći redak: + 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 carnet-sarge main non-free +deb http://ftp.carnet.hr/carnet-debian sarge main non-free

- To je uobičajena konfiguracija popisa repozitorija na CARNet Debianu - 2.x. Ako tog retka nema, dodajte ga i ponovite postupak instalacije - paketa. + To je uobičajena konfiguracija popisa repozitorija za CARNet Debian + sarge. Ako tog retka nema, dodajte ga i ponovite postupak + instalacije carnet-upgrade paketa.

- Nadogradnja + Postupak nadogradnje

- Poslije napravljenog backupa i dist-upgradea, možemo pokrenuti - skriptu za nadogradnju. Preporučamo je pokrenuti unutar naredbe - script, da imate zabilježen log svih akcija i problema): - - -# script upgrade.log -Script started, file is upgrade.log -# carnet-upgrade - + 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.

- +

- Pojaviti će se pozdravni prozor koji podsjeća na potrebne - predradnje: + Nakon pokretanja skripte pojavljuje se pozdravni prozor koji + podsjeća na potrebne predradnje: +-----------------------------------------------------------------+ -| Nadogradnja CARNet Sarge->Etch | +| Nadogradnja CARNet Debian Sarge->Etch | +-----------------------------------------------------------------+ | PAZNJA! PAZNJA! | | | -| Pokrenuli ste proceduru nadogradnje CARNet Linux distribucije. | +| 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 | @@ -214,7 +204,7 @@ Script started, file is upgrade.log | Takodjer pazljivo procitajte dokumentaciju za ovu nadogradnju | | koja se nalazi u: | | | -| /usr/share/doc/carnet-upgrade/carnet-upgrade.pdf | +| /usr/share/doc/carnet-upgrade/ | | | | Zelite li nastaviti? | +-----------------------------------------------------------------+ @@ -224,139 +214,251 @@ Script started, file is upgrade.log

- U sljedećem koraku biti će izvršena provjera nadogradnje na zadnju - inačicu prethodne distribucije za kritične servise - (amavisd-cni, bind9-cn, - clamav-cn, nessus-cn). Ako neki od njih - najnovije inačice, pojavit će se poruka: + 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: -CARNet Debian 2.1 ­ Nadogradnja distribucije sa CARNet Debian 1.x str. 7/14 ++-----------------------------------------------------------------+ +| Nadogradnja CARNet Debian Sarge->Etch | ++-----------------------------------------------------------------+ +| | +| Prije prelaska na Debian Etch potrebno je napraviti nadogradnju | +| ovih paketa: | +| amavisd-cn | +| | +| Pokrenite: | +| 'apt-get dist-upgrade' | +| ili: | +| 'apt-get install amavisd-cn' | +| | +| Nakon toga ponovno pozovite ovu skriptu. | +| | +| | +| | ++-----------------------------------------------------------------+ +| < OK > | ++-----------------------------------------------------------------+

- Izvršite navedene upute, napravite dist-upgrade, te ponovno - pokrenite skriptu. Ako je sve uredno instalirano, skripta će otići - na idući korak. Instalacija prethodne inačice CARNetove - distribucije, CARNet Linux 2, donosila je mnoštvo programskih paketa - koji nisu nužno potrebni za uobičajen rad poslužiteljskog računala. - Brisanjem tih aplikacija ubrzati ćete proceduru nadogradnje, kao i - smanjiti zauzeće diskovnog prostora. Sve aplikacije koje ostanu - označene za brisanje se brišu nakon pritiska na tipku ENTER. Oznaka - se može maknuti pritiskom na SPACE, i time spriječiti brisanje - aplikacije. + Izvršite navedene upute, te ponovno pokrenite + carnet-upgrade skriptu. Ako je sve uredno instalirano, + skripta će otići na idući korak.

- +

- U sljedećem koraku skripta će provjeriti da li u - /etc/dpkg/dpkg.cfg postoji opcija - force-overwrite koja nije preporučljiva za uobičajen rad. - Ako postoji, zakomentirat će je, i krenuti dalje. Ukoliko je želite - koristiti, nakon nadogradnje je odkomentirajte. + 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 verzija distribucije, CARNet Debian 2, donosila je | +| mnostvo paketa koji nisu potrebni za normalan rad serverskog | +| racunala. Brisanje ovih aplikacija ubrzati ce proceduru | +| nadogradnje i smanjiti zauzece diskovnog prostora. Ukoliko | +| zelite zadrzati neku od navedenih aplikacija, iskljucite oznaku | +| pored njenog imena. Slijedece aplikacije biti ce OBRISANE: | +| +-------------------------------------------------------------+ | +| | [X] Autoconf | | +| | [X] Automake | | +| | [X] Expect | | +| | [X] GCC | | +| | [X] GDB | | +| | [X] Gettext | | +| | [X] Make-cn | | +| +-------------------------------------------------------------+ | ++-----------------------------------------------------------------+ +| < OK > | ++-----------------------------------------------------------------+ +

- U sljedećem koraku skripta sprema jos jedan backup OpenLDAP (slapd) - baze, s obzirom na važnost podataka u LDAP imeniku. Novi Debian - paketi bi trebali neometano nastaviti raditi sa trenutnim sadržajem - baze, a ovaj backup možete obrisati kad se uvjerite da LDAP radi - ispravno nakon nadogradnje. + 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. -CARNet Debian 2.1 ­ Nadogradnja distribucije sa CARNet Debian 1.x str. 9/14 ++-----------------------------------------------------------------+ +| Nadogradnja CARNet Debian Sarge->Etch | ++-----------------------------------------------------------------+ +| Napravljen backup slapd baze u /var/backups/slapcat.cn4-upgrade.| +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++-----------------------------------------------------------------+ +| < OK > | ++-----------------------------------------------------------------+

- Ova skripta će napraviti i backup direktorija /etc. Ako - će biti potrebna neka stara konfiguracijska datoteka, potražite je - pomoću naredbe tar u arhivi /var/backups/cn4-etc.tar.gz. + 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. | +| | +| | +| | +| | +| | +| | +| | +| | ++-----------------------------------------------------------------+ +| < OK > | ++-----------------------------------------------------------------+ +

Slijedi instalacija /etc/apt/sources.list datoteke - podešene za CARNet Debian 4.0, s uključenim repozitorijima za - CARNetove i Debian Etch pakete, te obnova apt baze paketa. Vaše - dodatne repozitorije nakon završetka rada ove skripte možete - kopirati u tu datoteku iz stare datoteke, koja će biti spremljena - kao /etc/apt/sources.list.cn-upgrade. + 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 | +| | ++------------------------------------------------------------------+ +| < OK > | ++------------------------------------------------------------------+ +

- Poslije osvježavanja popisa repozitorija kreće skidanje 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 je "teška" oko 400-700MB, ovisno o - instaliranom softveru. U slučaju da nakon skidanja paketa nemate - dovoljno prostora za fazu nadogradnje (cca 200MB), skripta će + 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 je "teška" oko 300-700MB, + ovisno o instaliranom softveru. U slučaju da nakon skidanja paketa + nemate dovoljno prostora za fazu nadogradnje (cca 200MB), skripta će prekinuti s radom. Kad oslobodite dovoljno prostora na /var particiji, ponovo pokrenite - carnet-upgrade. Nakon ovoga kreće instalacija novih - paketa, tj. sama nadogradnja. Prilikom procesa nadogradnje Debianov - paketni sustav će postaviti veći broj upita vezanih za izmjenu - konfiguracijskih datoteka. Radi optimalnog rada sustava nakon - nadogradnje, pripremili smo popis upita za koje preporučujemo - odgovore koji nisu podrazumni (eng. default). Najčešće se radi o - forsiranoj instalaciji novih inačica konfiguracijskih datoteka. + 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.

- Donji redoslijed ne mora nužno pratiti redoslijed prilikom - nadogradnje, kao što ne morate imati instalirane sve navedene pakete - s donje navedenim konfiguracijskim datotekama. 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 + 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 + (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"): + je install the package maintainer's version): - /etc/apache/httpd.conf - /etc/apache-ssl/httpd.conf - sve skripte u /etc/init.d za paket sendmail, sve konfiguracijske - datoteke - /etc/proftpd.conf - /etc/limits.conf - sve datoteke u /etc/pam.d - sve logrotate konfiguracijske datoteke - /etc/postgresql/postmaster.conf - /etc/postgresql/postgresql.conf - sve snort konfiguracijske datoteke - /etc/xinetd.conf - /etc/services + /etc/amavis/* + /etc/apache/* + /etc/bind/named.conf.options + /etc/clamav/* + /etc/default/* + /etc/dovecot/dovecot.conf + /etc/init.d/* + /etc/logrotate.d/* + /etc/mysql/my.cnf + /etc/ntp.conf + /etc/pam.d/* + /etc/php4/apache/php.ini + /etc/php4/cgi/php.ini + /etc/php4/cli/php.ini + /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

- Jedno od pitanja prilikom nadogradnje je željeni raspored tipaka na - tastaturi: -

- -

- Ovu postavku također možete izmijeniti i nakon instalacije, pozivom: + 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). -# dpkg-reconfigure console-data ++-----------------------------------------------------------------+ +| 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 | +| | +| | +| | ++-----------------------------------------------------------------+ +| < OK > | ++-----------------------------------------------------------------+

- Nakon nadogradnje poslužitelja provjerite da li svi servisi uredno - rade. Naša skripta za upgrade provjerava jesu li pokrenuti osnovni - servisi, ali nije svemoguća. Također provjerite ispravan rad baza - podataka (MySQL, PostgreSQL, OpenLDAP): -

- -

- Nakon uspješne nadogradnje možete obrisati skinute pakete koji - zauzimaju diskovni prostor na /var particiji. To - napravite naredbom: + Nakon uspješne nadogradnje možete obrisati arhive nadograđenih + paketa koji zauzimaju diskovni prostor na /var + particiji: # apt-get clean @@ -371,36 +473,37 @@ CARNet Debian 2.1 ­ Nadogradnja distribucije sa CARNet Debian 1.x str. 9/14 Premalo mjesta na /var particiji

- Ako imate premalo mjesta na /var particiji, skripta - neće moći skinuti potrebne pakete, i neće htjeti nastaviti - nadogradnju. To možete riješiti tako da direktorij - /var/cache/apt/archives prebacite na neki drugi disk, - te da to polinkate. Kratka kuharica je (u slučaju /home - particije): + 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/ +# 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 cache - direktorij na staro mjesto: + 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/ +# rm /var/cache/apt/archives +# mv /home/apt-archives /var/cache/apt/archives

- Problemi sa apt-get + Problemi sa apt-get

- U slučaju greške u nekom paketu, može se dogoditi da kod instalacije - apt-get pukne i instalacija se prekine. U tom slučaju, - za početak treba dovršiti instalaciju već otpakiranih paketa: + 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 @@ -408,8 +511,8 @@ CARNet Debian 2.1 ­ Nadogradnja distribucije sa CARNet Debian 1.x str. 9/14

- Nakon toga treba pokušati dati apt-u mogućnost ispravke ako je - greška vezana za međuovisnosti paketa: + 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 @@ -417,10 +520,11 @@ CARNet Debian 2.1 ­ Nadogradnja distribucije sa CARNet Debian 1.x str. 9/14

- Ukoliko apt zahtijeva deinstalaciju nekih paketa, možete ih - instalirati nakon što ova naredba završi, također pomoću apt-geta. - Nakon toga možete ponovo pokrenuti carnet-upgrade skriptu. Ovaj - postupak ponovite ako se desi pucanje na nekom drugom paketu. + 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.

@@ -429,84 +533,124 @@ CARNet Debian 2.1 ­ Nadogradnja distribucije sa CARNet Debian 1.x str. 9/14 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 će biti rado saslušani, te ako ih imate, - uputite ih službi pomoći sistem-inženjerima. + 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 upgrade procedure + Brzi pregled postupka nadogradnje

- Kao prvo, backup svega! + 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). -# apt-get update -# apt-get dist-upgrade -# apt-get install carnet-upgrade +# mv /var/cache/apt/archives /home/apt-archives +# ln -s /home/apt-archives /var/cache/apt/archives +

-Ima li cca 600MB slobodno na /var? A nakon apt-get -clean? Ako nema, +

+ Instalacija paketa carnet-upgrade i pokretanje + skripte za nadogradnju. -# mv /var/cache/apt/archives /home/apt-archives -# ln -s /home/apt-archives /var/cache/apt/archives +# apt-get update +# apt-get dist-upgrade +# apt-get install carnet-upgrade # carnet-upgrade +

-Odgovoriti sa Y, odn. "install package maintainer's version": +

+ Odgovoriti sa Y, odnosno install package maintainer's + version za sljedeće konfiguracijske datoteke: -/etc/init.d/* -sendmail, sve sto ima veze s njim -/etc/proftpd.conf -/etc/limits.conf -/etc/pam.d/* -logrotate, sve /etc/logrotate.d/*, /etc/logrotate.conf logcheck, -sve /etc/logcheck/* -/etc/postgresql/postmaster.conf, -/etc/postgresql/postgresql.conf -snort, sve /etc/snort/* -/etc/xinetd.conf -/etc/services + + /etc/amavis/* + /etc/apache/* + /etc/bind/named.conf.options + /etc/clamav/* + /etc/default/* + /etc/dovecot/dovecot.conf + /etc/init.d/* + /etc/logrotate.d/* + /etc/mysql/my.cnf + /etc/ntp.conf + /etc/pam.d/* + /etc/php4/apache/php.ini + /etc/php4/cgi/php.ini + /etc/php4/cli/php.ini + /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) +

+ 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 carnet-upgrade +# dpkg --configure -a +# apt-get -f install +# apt-get install obrisani-paketi +

+ +

+ Na kraju, provjeriti stanje servisa: + + + Bind (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... + +

-Ako instalacija pukne: # # # # - - Na kraju, provjeriti servise: - - freeradius (spojiti se na CMU i pogledati u logovima), - ldap (npr. http://stroj/ldap/), - apache (http:// i https://stroj), - bind (host www.vasa-domena.hr localhost), - slanje i primanje maila (lokalno, sa LAN-a, izvana), - antivirus (poslati eicar.com i pogledati mail.log), - ftp, - ssh, - telnet (ako ga slučajno jos koristite), - 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 - sada vratiti na staro mjesto. ... i to je to! -

+

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

diff --git a/src/data.sh b/src/data.sh index 55d8955..e472320 100644 --- a/src/data.sh +++ b/src/data.sh @@ -80,7 +80,7 @@ Expect expect-cn expect GCC gcc-2.95-cn gcc-2.95 g++-2.95 gcc-2.95-doc gcc-cn gcc g++ gcc-doc gcc-misc-cn gobjc gpc gcj gij chill g77 GDB gdb-cn gdb Gettext gettext-cn gettext -Make make-cn +Make-cn make-cn Nessus nessus-cn nessus nessusd ' # php4-gd -> libgd1 -> xlibs -> xfree86-common -> suxx diff --git a/src/files/etc/apt/sources.list b/src/files/etc/apt/sources.list index 43225f1..99170bf 100644 --- a/src/files/etc/apt/sources.list +++ b/src/files/etc/apt/sources.list @@ -1,8 +1,8 @@ -# osnovni Debian Etch paketi +# 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 Linux v3 paketi +# CARNet Debian Etch paketi deb http://ftp.carnet.hr/carnet-debian carnet-etch main non-free # SRCE AAI paketi diff --git a/src/functions.sh b/src/functions.sh index 25ef535..7afb24a 100644 --- a/src/functions.sh +++ b/src/functions.sh @@ -263,7 +263,7 @@ check_upgrade () { if [ "$upgrade" ]; then notice " -Prije prelaska na Debian Etch potrebno je napraviti upgrade ovih paketa: +Prije prelaska na Debian Etch potrebno je napraviti nadogradnju ovih paketa: $upgrade Pokrenite: @@ -313,7 +313,7 @@ create_sources_list () { # backup old version if [ -f $sl -a ! -f $sl.$backup_ext ]; then - cp $sl $sl.$backup_ext + cp -a $sl $sl.$backup_ext fi # install new version @@ -349,25 +349,36 @@ add_group_proc () { fi } -# backup_slapd_db +# backup ldap database backup_slapd_db () { local ldap_backup=/var/backups/slapcat.$backup_ext + local old_umask result if [ ! -f $ldap_backup ]; then [ -x /etc/init.d/freeradius ] && /etc/init.d/freeradius stop || true if [ -x /etc/init.d/slapd -a -d /var/lib/ldap ]; then /etc/init.d/slapd stop || true - if slapcat -l $ldap_backup; then + old_umask=`umask` + umask 0077 # protect the backup file + slapcat -l $ldap_backup + result=$? + umask $old_umask + /etc/init.d/slapd start || true + + if [ "$result" eq 0 ]; then log "$ldap_backup created" notice "Napravljen backup slapd baze u $ldap_backup." + else + log "$ldap_backup was not created" + notice "Backup slapd baze u $ldap_backup nije uspio." + exit 1 fi - /etc/init.d/slapd start || true fi [ -x /etc/init.d/freeradius ] && /etc/init.d/freeradius start || true else - log "slapd backup already at $ldap_backup, skipping" + log "slapd backup already at $ldap_backup, skipping." notice "Backup slapd baze u $ldap_backup vec postoji!" fi } @@ -375,12 +386,21 @@ backup_slapd_db () { # backup etc direktorija backup_etc_dir () { local etc_backup=/var/backups/etc.$backup_ext.tar.gz + local old_umask if [ ! -f $etc_backup ]; then + old_umask=`umask` + umask 0077 # protect the backup file + if tar cfz $etc_backup /etc 2> /dev/null; then log "$etc_backup created" notice "Napravljen backup /etc direktorija u $etc_backup." + else + log "$etc_backup was not created" + notice "Backup /etc direktorija u $etc_backup nije uspio." + exit 1 fi + umask $old_umask else log "/etc backup already present in $etc_backup, skipping." notice "Backup /etc direktorija u $etc_backup vec postoji!" @@ -408,11 +428,16 @@ fix_etc_default_raid2 () { restore_config () { local file file_backup file_orig local pkg=$1 ver=$2 + local old_umask shift 2 # check package version pkg $pkg lt $ver || return 0 + # create new files safely + old_umask=`umask` + umask 0077 + # restore package files for file in $*; do file_orig=/usr/share/carnet-upgrade/files/$file @@ -429,8 +454,12 @@ restore_config () { # install original log Restoring config file $file cp $file_orig $file + chown --reference $file_backup $file + chmod --reference $file_backup $file fi done + + umask $old_umask } # restore modified config to their package defaults @@ -537,7 +566,7 @@ upgrade_apache () { # register cn changes in modules.conf modules_conf=/etc/apache/modules.conf if [ ! -e "$modules_conf.$backup_ext" ]; then - cp "$modules_conf" "$modules_conf.$backup_ext" + cp -a "$modules_conf" "$modules_conf.$backup_ext" ucf $modules_conf $modules_conf fi diff --git a/src/messages.sh b/src/messages.sh index 033d255..3e57c9f 100644 --- a/src/messages.sh +++ b/src/messages.sh @@ -1,10 +1,10 @@ ### # dialog stuff -title="Nadogradnja CARNet Sarge->Etch" +title="Nadogradnja CARNet Debian Sarge->Etch" msg_first_warning="PAZNJA! PAZNJA! -Pokrenuli ste proceduru nadogradnje CARNet Linux distribucije. +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 @@ -13,13 +13,13 @@ PostgreSQL. Takodjer pazljivo procitajte dokumentaciju za ovu nadogradnju koja se nalazi u: - /usr/share/doc/carnet-upgrade/carnet-upgrade.pdf + /usr/share/doc/carnet-upgrade/ Zelite li nastaviti?" -msg_remove_bloat="Prethodna verzija distribucije, CARNet Linux 2, donosila je mnostvo +msg_remove_bloat="Prethodna verzija distribucije, CARNet Debian 2, donosila je mnostvo paketa koji nisu potrebni za normalan rad serverskog racunala. -Brisanje ovih aplikacija ubrzati ce upgrade proceduru i smanjiti +Brisanje ovih aplikacija ubrzati ce proceduru nadogradnje i smanjiti zauzece diskovnog prostora. Ukoliko zelite zadrzati neku od navedenih aplikacija, iskljucite oznaku pored njenog imena. @@ -34,7 +34,7 @@ msg_failed_services="Skripta nije uspjela detektirati da sljedeci servisi rade i " -msg_finished_upgrade="Automatizirani dio upgradea je zavrsen. Sada morate provjeriti\ +msg_finished_upgrade="Automatizirani dio nadogradnje je zavrsen. Sada morate provjeriti\ jesu li svi vasi kriticni servisi ispravno konfigurirani i pokrenuti. " @@ -50,12 +50,12 @@ Koristenje: $(basename $0) [] | -h | --help moze biti: - main - izvrsava potpunu proceduru za upgrade sa CARNet Debian 2.x (sarge) + izvrsava potpunu proceduru za nadogradnju sa CARNet Debian 2.x (sarge) na CARNet Debian 4.x (etch) distribuciju. Ovo je pretpostavljena vrijednost. - post_upgrade - izvrsava samo one akcije iz procedure za upgrade koje dolaze + izvrsava samo one akcije iz procedure za nadogradnju koje dolaze nakon apt-get dist-upgrade. - etch -- 1.7.10.4