Linuxi serveri logid: journalctl, /var/log, tail -f 2026

26 May 2026 Autor: Olga Naumova

Serveri logisid vaadatakse kahel viisil: journalctl kaudu (systemd päevik, kuhu kirjutab enamik teenuseid) ja /var/log kausta failidest. Elavat voogu on mugav püüda käsuga tail -f ja vigu otsida grep-iga. Allpool on igapäevased töökäsud.

Kus logid asuvad

  • journald — systemd tsentraalne päevik, kättesaadav käsuga journalctl.
  • /var/log/ — üksikute teenuste tekstifailid (nginx, mysql, post).
  • dmesg — tuuma teated.

journalctl: peamine tööriist

Kogu päeviku kuvamine (lõpust, kerimisega):

journalctl -e

Elav voog reaalajas

journalctl -f

Analoog käsule tail -f, aga kogu systemd päeviku jaoks. Katkestamiseks Ctrl+C.

Konkreetse teenuse logid

journalctl -u nginx
journalctl -u ssh -f

Filter aja järgi

journalctl --since "2026-05-26 09:00" --until "2026-05-26 10:00"
journalctl --since "1 hour ago"
journalctl --since today

Ainult vead

Prioriteeditaseme järgi (0 on emergency, 3 on error):

journalctl -p err -b

-b piirab väljundi praeguse süsteemikäivitusega. Eelmise käivituse logid:

journalctl -b -1

Tuuma logid

journalctl -k

Viimased N rida

journalctl -u nginx -n 50

Failid kaustas /var/log

Kasulikud failid (sõltub distributsioonist):

Fail Mida sisaldab
/var/log/syslog Üldised süsteemisündmused (Debian/Ubuntu)
/var/log/auth.log Autentimine, SSH sisselogimised
/var/log/nginx/error.log Veebiserveri vead
/var/log/nginx/access.log Päringud saidile
/var/log/mysql/error.log MySQL/MariaDB vead
/var/log/dmesg Tuuma teated käivitusel

tail, head, less

Faili elav vaatamine:

tail -f /var/log/nginx/access.log

Viimased 100 rida:

tail -n 100 /var/log/nginx/error.log

Lehekülgede kaupa koos otsinguga (otsimiseks vajutage /):

less /var/log/syslog

Mitme faili korraga jälgimine:

tail -f /var/log/nginx/access.log /var/log/nginx/error.log

Otsing logidest grep-iga

Vigade leidmine:

grep -i "error" /var/log/nginx/error.log

Konteksti kuvamine (3 rida enne ja pärast):

grep -i -C 3 "segfault" /var/log/syslog

Ebaõnnestunud SSH sisselogimiste lugemine:

grep "Failed password" /var/log/auth.log | wc -l

Elav voog koos filtriga:

tail -f /var/log/nginx/access.log | grep " 500 "

Veebilogide analüüs

Enim päringuid teinud IP-aadressid:

awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -rn | head

Enim küsitud URL-id:

awk '{print $7}' /var/log/nginx/access.log | sort | uniq -c | sort -rn | head

Logide maht ja rotatsioon

systemd päeviku maht:

journalctl --disk-usage

Vanade kirjete puhastamine, jättes alles viimased 200 MB või 7 päeva:

journalctl --vacuum-size=200M
journalctl --vacuum-time=7d

Tekstilogisid roteerib logrotate — seaded on kaustas /etc/logrotate.d/.

Päeviku püsiv säilitamine

Vaikimisi hoiab journald mõnes süsteemis logisid ainult mälus ja kaotab need taaskäivitusel. Lülitage sisse püsiv säilitamine:

mkdir -p /var/log/journal
systemd-tmpfiles --create --prefix /var/log/journal
systemctl restart systemd-journald

Nüüd näitab journalctl -b -1 eelmiste käivituste logisid — see on asendamatu ootamatute taaskäivituste lahtiharutamisel.

Filtreerimine mitme tingimuse järgi

journalctl kombineerib filtreid. Konkreetse teenuse vead viimase tunni jooksul:

journalctl -u nginx -p err --since "1 hour ago"

Konkreetse protsessi (PID) logid:

journalctl _PID=1234

Käivitatava faili järgi:

journalctl /usr/sbin/sshd

Väljundivorming töötlemiseks

Skriptidesse edastamiseks sobib JSON:

journalctl -u nginx -o json-pretty --since today

Kompaktne väljund ilma reamurdmiseta ja koos prioriteetidega:

journalctl -o short-precise -p warning

Vigade jälgimine reaalajas

Pange kokku häiretahvel — elav voog ainult vigadest kõigist teenustest:

journalctl -f -p err

Jätke käsk eraldi tmux- või screen-seanssi, et probleeme kohe nende tekkimisel näha. See on lihtne asendus töölaudadele, kui on vaja serveri käitumises kiiresti selgusele jõuda.

Korduma kippuvad küsimused

Miks fail /var/log/auth.log on tühi? journaldiga süsteemides ei pruugi logid failidesse dubleeruda. Vaadake journalctl -u ssh.

Kuidas vaadata kukkunud teenuse logisid? journalctl -u teenuse_nimi -n 100 --no-pager näitab viimaseid ridu enne kukkumist.

Logid võtavad palju ruumi — mida teha? Piirake päevikut käsuga journalctl --vacuum-size ja määrake SystemMaxUse failis /etc/systemd/journald.conf.

Kuidas eksportida logid faili? journalctl -u nginx --since today > nginx-today.log.

Mis vahe on tail -f ja journalctl -f vahel? tail -f jälgib ühte faili, journalctl -f kogu systemd päevikut koos teenuse ja prioriteedi filtritega.


Kindel logidega töö lihtsustab käitust. Paigutage projekt VPS-i rendile või VPS-ile turvalisuse ja VPN-i jaoks. Monitooringu ja intsidentide lahtiharutamise võtab enda peale Serverite haldus.

Olga Naumova