Modul 4 · 4.3
Življenjska doba in nadgradnje izdaj
Modul 4: Programska oprema in posodobitve · Čas branja: 11 minut
Učni cilj: Po tej lekciji boste znali poiskati življenjsko dobo svoje distribucije, vedeli boste, kaj »end of life« pomeni za Vaš strežnik, ter boste znali varno načrtovati in izvesti nadgradnjo izdaje.
Ključni pojmi: izdaja (release), LTS, standardna podpora, Debian LTS, Ubuntu ESM in Ubuntu Pro, end of life (EOL), /etc/os-release, do-release-upgrade, minimalna in polna nadgradnja, viri paketov tretjih oseb, posnetek (snapshot), curl | bash
Vsaka izdaja ima rok trajanja
Samodejne posodobitve (lekcija 4.2) delujejo le, dokler Vaša distribucija za Vašo različico še izdaja posodobitve. Vsaka izdaja Debiana in Ubuntuja dobiva varnostne posodobitve določeno obdobje. Potem se to konča: Vaš strežnik ne dobiva več popravkov, niti za resne ranljivosti. Temu pravimo end of life (EOL, konec življenjske dobe).
Katero različico imate, vidite takole:
anna@web1:~$ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 13 (trixie)"
NAME="Debian GNU/Linux"
VERSION_ID="13"
VERSION="13 (trixie)"
VERSION_CODENAME=trixie
...Na Ubuntuju na primer piše VERSION="24.04.3 LTS (Noble Numbat)".
Debian
Debian izdajo v celoti podpira približno tri leta. Nato jo za še dve leti prevzame ekipa Debian LTS, z varnostnimi posodobitvami za najpogosteje uporabljene pakete. Za trenutne izdaje (stanje novembra 2026, preverite na debian.org/releases):
| Izdaja | Izšla | Konec redne podpore | Konec LTS |
|---|---|---|---|
| Debian 13 "trixie" | 9. avgust 2025 | avgust 2028 | 30. junij 2030 |
| Debian 12 "bookworm" | 10. junij 2023 | 11. julij 2026 | 30. junij 2028 |
Debian 12 torej še dobiva posodobitve prek LTS, vendar je v zadnji fazi. Nov strežnik namestite na Debian 13.
Ubuntu
Ubuntu vsaki dve leti aprila izda različico LTS (Long Term Support) s petimi leti standardnega varnostnega vzdrževanja. Z naročnino Ubuntu Pro (za osebno rabo brezplačna na nekaj napravah) se temu doda ESM (Expanded Security Maintenance), skupaj do deset let.
| Izdaja | Standardna podpora do | Z ESM do |
|---|---|---|
| Ubuntu 26.04 LTS | maj 2031 | maj 2036 |
| Ubuntu 24.04 LTS | maj 2029 | maj 2034 |
Med izdajami LTS izhajajo vmesne različice (na primer 25.10) z le devetimi meseci podpore. Te niso namenjene strežniku, ki mora delovati leta. Za strežnik vedno izberite LTS.
Kaj EOL pomeni za Vas
Strežnik na izdaji, ki ne dobiva več posodobitev, preprosto deluje naprej. Prav to je zahrbtno: ničesar ne opazite, dokler nekdo ne izkoristi ranljivosti, ki je odpravljena povsod, razen pri Vas. Poleg tega:
- nova programska oprema (nova različica PHP, nova izdaja Dockerja) se za Vašo izdajo ne gradi več;
- tudi viri paketov tretjih oseb prenehajo, pogosto že prej;
- dlje ko čakate, večji je skok. Debian ne podpira preskakovanja izdaje: z 11 na 13 morate prek 12.
Datum EOL svojega strežnika si zato vpišite v koledar, z opomnikom pol leta prej.
Dva načina: nadgradnja ali ponovna postavitev
Do nove izdaje vodita dve urejeni poti.
- Nadgradnja na mestu (in-place): obstoječi strežnik posodobite na novo izdajo. Hitro, vse ostane na svojem mestu, vendar se s tem prenesejo tudi stari ostanki in Vaše lastne prilagoditve.
- Ponovna postavitev: ustvarite nov strežnik z novo izdajo, nanj znova namestite svoje storitve (priročno z zapiski iz lekcije 10.4 ali z Docker Compose, modul 9), prenesete podatke iz varnostne kopije in preklopite DNS (lekcija 7.1). Več dela, a čisto, in hkrati je to preizkus Vaše varnostne kopije.
Za majhen strežnik z nekaj storitvami je nadgradnja na mestu povsem primerna. Če na njem teče veliko prilagojenih rešitev ali je bil strežnik že nekajkrat nadgrajen, razmislite o ponovni postavitvi.
Priprava nadgradnje na mestu
Preden začnete, poskrbite za teh pet stvari:
- Posnetek (snapshot) v nadzorni plošči ponudnika, tik preden začnete, in nedavna varnostna kopija zunaj strežnika (modul 8). Posnetek je Vaša hitra pot nazaj, če gre nadgradnja na pol poti narobe.
- Drug vhod: konzola Vašega ponudnika. Delate prek SSH, in če se med nadgradnjo spremenijo omrežne nastavitve ali strežnik SSH, želite lahko nadaljevati prek konzole. Opombe ob izdaji Debiana to pravijo dobesedno: vnaprej poskrbite za drug način prijave.
- Preberite opombe ob izdaji, predvsem poglavje "Issues to be aware of". Za Debian 13 tam na primer piše:
/tmpje zdaj privzeto v pomnilniku,/etc/sysctl.confse ne bere več (uporabite/etc/sysctl.d/),/bootpa mora biti dovolj velik. - Preglejte vire tretjih oseb. Paketi, ki ne prihajajo neposredno od Debiana ali Ubuntuja, lahko med nadgradnjo povzročijo spore. Preverite, katere vire imate (
ls /etc/apt/sources.list.d/) in ali ima izdelovalec že različico za novo izdajo. - Seja, ki preživi prekinjeno povezavo. Nadgradnjo zaženite v
tmuxaliscreen. Če Vam internet izpade, nadgradnja teče naprej, Vi pa se nanjo znova priključite ztmux attach.
Debian: koraki
Iz opomb ob izdaji Debiana 13, za nadgradnjo z 12 na 13:
root@web1:~# apt update && apt full-upgrade # najprej v celoti posodobite trenutno izdajo
root@web1:~# sed -i 's/bookworm/trixie/g' /etc/apt/sources.list.d/debian.sources
root@web1:~# apt update
root@web1:~# apt upgrade --without-new-pkgs # minimalna nadgradnja
root@web1:~# apt full-upgrade # popolna nadgradnja
root@web1:~# rebootČe še uporabljate /etc/apt/sources.list, tam prilagodite kodno ime. Vire tretjih oseb med nadgradnjo začasno izklopite (preimenujte v .disabled) in jih nato znova vklopite s kodnim imenom nove izdaje, če ga izdelovalec ima.
Med nadgradnjo bodite pozorni na vprašanja o konfiguracijskih datotekah. Če ste datoteko prilagodili sami, na primer sshd_config, Vas dpkg vpraša, ali želite obdržati svojo različico. Obdržite svojo različico, če veste, zakaj ste jo prilagodili, in jo nato primerjajte z novo različico (.dpkg-dist).
Po ponovnem zagonu:
anna@web1:~$ cat /etc/os-release | grep VERSION=
VERSION="13 (trixie)"
anna@web1:~$ systemctl --failed
anna@web1:~$ sudo apt autoremovesystemctl --failed (lekcija 6.1) mora biti prazen. Preverite tudi, ali Vaša spletna mesta in vsebniki delujejo ter ali je Vaš nadzor (lekcija 8.3) zelen.
Ubuntu: do-release-upgrade
Ubuntu ima za to svoj program:
anna@web1:~$ sudo apt update && sudo apt full-upgrade
anna@web1:~$ sudo do-release-upgradeDve stvari je dobro vedeti. Prvič, Ubuntu nadgradnjo z ene različice LTS na naslednjo ponudi šele po prvi točkovni izdaji (na primer 26.04.1, nekaj mesecev po aprilu). To je namerno: v prvih mesecih se odpravijo največje težave. Drugič: če nadgradnjo poganjate prek SSH, do-release-upgrade sporoči, da bo za vsak primer zagnal dodaten strežnik SSH na rezervnih vratih. Ta vrata morajo biti v tem primeru dovoljena v Vašem požarnem zidu (lekcija 5.2), če jih potrebujete; običajno jih ne potrebujete, ker imate konzolo.
Velika past: programska oprema od zunaj distribucije
Nadgradnje se skoraj vedno zalomijo pri programski opremi, ki ne prihaja iz distribucije. Tri navade naredijo razliko:
- Brez
curl https://... | bash. Skripta z interneta, ki jo neposredno zaženete kot root, lahko na Vašem strežniku spremeni marsikaj: doda vire, zaupa ključem za vse vire, prepiše datoteke. Ne veste, kaj se je zgodilo, in ob naslednji nadgradnji se kaj pokvari. Takšno skripto prenesite, jo preberite in korake raje izvedite sami. - Dodaten vir le neposredno od izdelovalca, z lastnim ključem (
Signed-By, lekcija 4.1), in v dokumentacijo strežnika zapišite, zakaj je tam. - Brez posameznih datotek
.debs spletnih strani, če je paket na voljo tudi v distribuciji ali v viru izdelovalca. Te nikoli ne dobijo posodobitev.
Na AlmaLinuxu in Rocky Linuxu
Glavna (»major«) različica (9, 10) tam dobiva posodobitve približno deset let, vmesne različice (9.6, 9.7) pa preprosto posodobite z dnf upgrade. Skok na novo glavno različico na mestu je mogoč z orodjem ELevate (AlmaLinux), vendar se veliko skrbnikov pri skoku na novo glavno različico vseeno odloči za ponovno postavitev.
V praksi
V zaslonu VPS pri WebOké pred nadgradnjo naredite posnetek (največ dva hkrati, na isti shrambi kot Vaš VPS), konzolo pa imate kot drug vhod. Pri drugih ponudnikih se to imenuje podobno: snapshot, konzola VNC ali spletna konzola, rescue. Posnetek ne nadomešča varnostne kopije zunaj strežnika; ko vse deluje, ga izbrišite, saj raste z vsako spremembo.
Povzetek
- Vsaka izdaja dobiva varnostne posodobitve določeno obdobje; nato doseže konec življenjske dobe (EOL) in Vaš strežnik ne dobiva več popravkov.
- Debian: približno tri leta in še dve leti LTS; Ubuntu LTS: pet let in z ESM do deset let. Za strežnik vedno izberite LTS in si končni datum vpišite v koledar.
- Nadgradnjo pripravite s posnetkom, varnostno kopijo, konzolo, opombami ob izdaji in sejo tmux.
- Debian: viri na novo kodno ime,
apt upgrade --without-new-pkgs,apt full-upgrade; Ubuntu:do-release-upgrade, po prvi točkovni izdaji. - Programska oprema od zunaj distribucije je največji vir težav pri nadgradnji: brez
curl | bash, le viri izdelovalca z lastnim ključem.
Kviz
Naloga
Naloga O4.3: Vaš načrt nadgradnje. Poiščite, na kateri izdaji teče Vaš strežnik in do kdaj dobiva varnostne posodobitve. Nato pripravite načrt nadgradnje: katere vire tretjih oseb imate, kako naredite posnetek in varnostno kopijo, kako se prijavite prek konzole, katere korake izvedete, kako nato preizkusite delovanje ter ali izberete nadgradnjo na mestu ali ponovno postavitev (z utemeljitvijo)?
Naloga O4.3: Vaš načrt nadgradnje
To nalogo opravite sami; nihče je ne pregleda. Odkljukajte, kar ste naredili, in nalogo označite kot opravljeno.
Posnetek stanja (snapshot) in varnostna kopija, branje opomb ob izdaji, delo v tmux; Debian: viri na novo kodno ime, apt upgrade --without-new-pkgs, apt full-upgrade, ponovni zagon; Ubuntu: do-release-upgrade. Nato preverite systemctl --failed, spletna mesta, vsebnike in nadzor. Ponovna postavitev se splača pri veliko prilagoditvah in je hkrati preizkus Vaše varnostne kopije.
Vaše kljukice in zapiski ostanejo samo v tem brskalniku, nikamor jih ne pošiljamo. Če ste prijavljeni, v Moji tečaji shranimo samo podatek, da ste nalogo opravili.
Za nadaljnje branje
- Posnetki in varnostne kopije Vašega VPS
- Priklop lastnega ISO ali ponovna namestitev VPS
- Izdaje Debiana in obdobja podpore: https://www.debian.org/releases/
- Debian 13, opombe ob izdaji, poglavje 4 (nadgradnja) in 5 (na kaj morate biti pozorni): https://www.debian.org/releases/trixie/release-notes/
- Ubuntu, cikel izdaj: https://ubuntu.com/about/release-cycle
- Dokumentacija Ubuntu Server, Upgrade your release: https://ubuntu.com/server/docs/how-to/software/upgrade-your-release/
