V sodobnih Linux distribucijah (kot so Ubuntu, Debian, CentOS in RedHat) je systemd privzeti inicializacijski sistem in upravitelj storitev, ki se zažene kot prvi proces (PID 1). Glavno orodje za upravljanje, nadzor in konfiguracijo storitev v tem okolju je ukaz systemctl. V tem članku si bomo ogledali, kako z njim preprosto zaganjati, ustavljati, omogočati ter diagnosticirati strežniške storitve.
Osnovni ukazi za nadzor stanja storitev
Z ukazom systemctl lahko v trenutku preverimo, ali določen strežnik (npr. spletni strežnik ali baza podatkov) deluje pravilno.
| Ukaz | Namen | Primer uporabe |
|---|---|---|
| systemctl start | Takoj zažene izbrano storitev. | sudo systemctl start nginx |
| systemctl stop | Zaustavi trenutno delujočo storitev. | sudo systemctl stop apache2 |
| systemctl restart | Ponovno zažene storitev (stop + start). | sudo systemctl restart mysql |
| systemctl reload | Ponovno naloži nastavitve brez prekinitve povezav. | sudo systemctl reload nginx |
| systemctl status | Prikaže podrobno stanje delovanja in zadnje dnevnike. | sudo systemctl status php8.2-fpm |
Samodejni zagon ob vklopu strežnika
Za storitve, ki morajo teči neprekinjeno (npr. spletni strežnik po ponovnem zagonu sistema), moramo nastaviti samodejni zagon.
- systemctl enable: Nastavi storitev tako, da se samodejno zažene ob vsakem zagonu operacijskega sistema.
- systemctl disable: Onemogoči samodejni zagon ob sistemskem štartu.
- systemctl is-enabled: Hitro preveri, ali je samodejni zagon za določeno storitev vklopljen.
Praktični primeri upravljanja strežnika
Spodnji primer prikazuje celotno zaporedje ukazov za zagon, omogočanje ter diagnostiko spletnega strežnika Nginx.
# 1. Začetni zagon storitve Nginx sudo systemctl start nginx # 2. Vklop samodejnega zagona ob vklopu strežnika sudo systemctl enable nginx # 3. Pregled stanja (zeleni krog 'active (running)' pomeni nemoteno delovanje) sudo systemctl status nginx # 4. Pregled vseh aktivnih sistemskih storitev systemctl list-units --type=service --state=running
Diagnostika napak z orodjem journalctl
Če se storitev noče zagnati in systemctl status javi napako (stanje failed), uporabimo orodje journalctl za podroben pregled sistemskih dnevnikov. Z ukazom journalctl -u nginx.service -e si lahko ogledate točen vzrok napake (npr. napako v konfiguracijski datoteki).