CARNET Debian 10 (buster) nadogradnja Grupa za izradu paketa paketi@carnet.hr Verzija %PKG_VERSION% CARNET Debian buster je deseta generacija CARNET Debian distribucije i temelji se na Debian GNU/Linux buster. Ovaj priručnik opisuje postupak nadogradnje CARNET Debian distribucije s inačice 9 stretch na inačicu 10 buster. Priručnik je zamišljen kao pomoć CARNET-ovim 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 10, koji se nalazi na CARNET-ovom FTP poslužitelju u stretch repozitoriju paketa. Backup Datotečni sustav

Prije bilo kakve veće instalacije ili nadogradnje, preporučuje se 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, MariaDB, 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 AAI@Edu 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: # service freeradius stop # service 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: # service slapd start # service freeradius start

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

MariaDB

Prilikom backupa MariaDB 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 MariaDB baze pogledajte .

PostgreSQL

Backup PostgreSQL baze podataka možete napraviti na sljedeći način: # su - postgres -c 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 buster distribuciju, potrebno je izvršiti nadogradnju stretch distribucije na najsvježije pakete. To se najjednostavnije izvodi naredbom apt: # apt update # apt full-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 update # apt install carnet-upgrade

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

To je uobičajena konfiguracija CARNET Debian stretch 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 Tue Oct 29 12:21:27 2013 CN: run_actions (main) started...

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

U sljedećem koraku biti će izvršena provjera jesu li najvažniji servisi nadograđeni na najnovije inačice u stretch distribuciji. Ako neki od instaliranih servisa nije najnovija inačica, pojavit će se poruka: +-----------------------------------------------------------------+ | Nadogradnja CARNET Debian stretch -> buster | +-----------------------------------------------------------------+ | | | Prije prelaska na Debian buster potrebno je napraviti | | nadogradnju ovih paketa: | | amavisd-cn | | | | Pokrenite: | | # apt update | | # apt full-upgrade | | ili: | | # apt update | | # apt 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 inačice trenutno pokrenutog kernela. Prije nastavka nadogradnje preporuča se pokrenuti računalo s najnovijom instaliranom inačicom kernela (ako to već nije slučaj). +-----------------------------------------------------------------+ | Nadogradnja CARNET Debian stretch -> buster | +-----------------------------------------------------------------+ | | | Na racunalu je pronadjenja verzija kernela novija od trenutno | | pokrenute. Prije pocetka nadogradnje paketa preporuceno je | | pokrenuti racunalo s najnovijim dostupnim kernelom. Nakon toga | | ponovno pozovite ovu skriptu. | | | | Zelite li rebootati racunalo prije pocetka nadogradnje? | | | +-----------------------------------------------------------------+ | < Da > < Ne > | +-----------------------------------------------------------------+

U sljedećem koraku nudi se brisanje grafičkih sučelja koja su na poslužiteljskom računalu ponekad nepotrebno instalirana. +-----------------------------------------------------------------+ | Nadogradnja CARNET Debian stretch -> buster | +-----------------------------------------------------------------+ | | | 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 prethodnih inačica CARNET Debian 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 stretch -> buster | +-----------------------------------------------------------------+ | Prethodne inacice distribucije CARNET Debiana donosile su | | 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 > | +-----------------------------------------------------------------+

Sljedeći korak nadogradnje nudi mogućnost brisanja nekorištenih servisa sa poslužitelja: +-----------------------------------------------------------------+ | Nadogradnja CARNET Debian stretch -> buster | +-----------------------------------------------------------------+ | Standardna instalacija CARNET Debian distribucije donosi | | podrsku za veci broj razlicitih servisa. U ovom koraku nudi | | se mogucnost uklanjanja nekoristenih servisa sa vaseg | | posluzitelja. Uklanjanjem nekoristenih servisa smanjit ce se | | mogucnost problema i ubrzati procedura nadogradnje. Ukoliko | | zelite ukloniti neki od navedenih servisa ukljucite oznaku | | ispred imena odgovarajuceg paketa. | | | | Odaberite servise koje zelite UKLONITI: | | +-------------------------------------------------------------+ | | | [ ] amavisd-cn | | | | [ ] bind9-cn | | | | [ ] clamav-cn | | | | [ ] dovecot-cn | | | | [ ] mailman-cn | | | | [ ] munin-cn | | | +-------------------.(+)--------------------------------------+ | +-----------------------------------------------------------------+ | < 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 stretch -> buster | +-----------------------------------------------------------------+ | Napravljen backup slapd baze u /var/backups/slapcat.cn9-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 stretch -> buster | +-----------------------------------------------------------------+ | Napravljen backup /etc direktorija u | | /var/backups/etc.cn9-upgrade.tar.gz. | | | | | | | | | | | | | | | | | +-----------------------------------------------------------------+ | < U redu > | +-----------------------------------------------------------------+

Slijedi instalacija /etc/apt/sources.list datoteke podešene za CARNET Debian buster 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.cn9-upgrade. +-----------------------------------------------------------------+ | Nadogradnja CARNET Debian stretch -> buster | +-----------------------------------------------------------------+ | Novi sadrzaj datoteke /etc/apt/sources.list: | | | | # See sources.list(5) for more information | | deb http://ftp.hr.debian.org/debian/ buster main contrib non-fr| | deb http://ftp.hr.debian.org/debian/ buster-updates main contri| | deb http://security.debian.org/ buster/updates main contrib non| | | | # CARNET Debian Linux | | deb http://ftp.carnet.hr/carnet-debian/ carnet-buster main non-| | | | # SRCE AAI@EduHr | | deb http://ftp.srce.hr/srce-debian/ srce-buster 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 300MB), 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 putem debconf ili 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/apache2/* /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/php/7.3/* /etc/postgresql/postmaster.conf /etc/postgresql/postgresql.conf /etc/proftpd.conf /etc/security/limits.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 (MariaDB, PostgreSQL, OpenLDAP). +-----------------------------------------------------------------+ | Nadogradnja CARNET Debian stretch -> buster | +-----------------------------------------------------------------+ | 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 clean

Izvanredne situacije Premalo mjesta na / particiji

Ukoliko imate malu / particiju moguće je da instalacija kernel paketa neće uspjeti. Paket kernel-cn zauzima oko 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čaj 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

U slučaju greške u nekom paketu, može se dogoditi da prilikom instalacije apt 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 za slučaj da je greška vezana za međuovisnost paketa: # apt -f install

Ukoliko apt 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 paketi@carnet.hr.

Brzi pregled postupka nadogradnje

Kao prvo, backup svega!

Ima li 600MB slobodno na /var? A nakon apt 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 update (ili apt-get update) # apt full-upgrade (ili apt-get dist-upgrade) # apt install carnet-upgrade (ili apt-get install carnet-upgrade) # carnet-upgrade

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

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

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

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

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