Steg 1: Forstå hvor loggene ligger
Loggfiler på Linux finnes som regel i katalogen /var/log. I tillegg bruker mange nyere systemer systemd sin journal (tilgjengelig via journalctl). Sjekk først hva som finnes:
ls -lah /var/log — viser filer og kataloger.
journalctl --list-boots — viser journal-oppføringer per oppstart.
Tips: Ikke slett filer direkte fra /var/log uten å vite hva de er — bruk logrotate for rydding eller flytt til et arkiv.
Steg 2: Lese loggfiler sikkert
For å lese store loggfiler bruker du pagere eller «follow»-modus:
less /var/log/syslog eller less /var/log/messages — paget visning.
tail -n 200 /var/log/syslog — se siste 200 linjer.
tail -f /var/log/syslog — følg nye linjer i sanntid.
journalctl -u <service> — viser logg for en systemd-tjeneste (f.eks. journalctl -u sshd).
Tips: Bruk sudo ved behov. For komprimerte loggfiler har du zless /var/log/syslog.1.gz.
Steg 3: Søke og filtrere i loggene
Søk og filtrering gjør feilsøking effektiv:
grep -i "error" /var/log/nginx/error.log — finn feilmeldinger.
journalctl --since "2025-10-01" --until "2025-10-06" --grep "timeout" — tidsfiltrering med journalctl.
- Kombiner
tail -f og grep: tail -f /var/log/syslog | grep --color=auto -i "warn".
Tips: Bruk awk/sed for avansert parsing når du trenger felter eller kolonner.
Steg 4: Endre loggnivå og logging for tjenester
Mange tjenester lar deg styre hvilket loggnivå de bruker (f.eks. error, warning, info, debug). Metoden varierer:
- Systemd-tjenester: bruk en override-fil til å sette miljøvariabler eller cmdline-opts:
sudo mkdir -p /etc/systemd/system/sshd.service.d
- Lag
/etc/systemd/system/sshd.service.d/override.conf med innhold som: [Service] Environment="SYSTEMD_LOG_LEVEL=info"
- Kjør
sudo systemctl daemon-reload && sudo systemctl restart sshd.
- Applikasjonsspesifikt: rediger f.eks.
/etc/nginx/nginx.conf eller /etc/rsyslog.conf og restart tjenesten.
Tips: Les tjenestens dokumentasjon — enkelte apper krever egne flagg i startkommandoen.
Steg 5: Administrere rotasjon og lagring av loggfiler (logrotate)
For å unngå at disk fylles opp, bruk logrotate:
- Sjekk konfigurasjon:
/etc/logrotate.conf og /etc/logrotate.d/.
- Eksempel på enkel konfig for
/var/log/myapp.log i /etc/logrotate.d/myapp: /var/log/myapp.log { daily rotate 14 compress missingok notifempty create 0640 root adm }
- Test rotasjon:
sudo logrotate -d /etc/logrotate.conf (dry-run) eller sudo logrotate -f /etc/logrotate.conf (tving rotasjon).
Tips: Sett compress og rotate etter ønsket retensjon; for større miljøer vurder ekstern logglagring.
Steg 6: Sikre og arkivere logger
Sikre loggdata og implementer gode retensjonsrutiner:
- Aktiver komprimering i
logrotate (compress) for lagringsbesparelse.
- Flytt eldre loggfiler til et dedikert arkiv (
/var/log/archive/) eller hent dem til et S3-kompatibelt lagringssted.
- Vurder å sende kritiske logger til en ekstern syslog-server eller SIEM med
rsyslog/syslog-ng.
Tips: Sørg for at kun root/adm har skrive- og leserettigheter til sensitive loggfiler.
Steg 7: Vanlige operasjoner og feilsøkingskommandoer
Hurtigreferanse for nyttige kommandoer:
journalctl -xe — se siste feil og utvidet logging.
journalctl --vacuum-size=500M — tøm journal til å bruke maks 500MB.
grep -R "Exception" /var/log — søk rekursivt etter unntak.
logwatch --detail High --service all --range today — daglig loggsammendrag (installer logwatch).
Tips: Når diskplass er kritisk, bruk du -sh /var/log/* for å finne store filer raskt.
Oppsummering
Du har nå: identifisert hvor systemlogger ligger, lært kommandoer for å lese og søke i dem, justert loggnivå for tjenester, satt opp rotasjon med logrotate og vurdert sikring og arkivering. Neste steg er å lage en enkel logrotate-policy for dine kritiske applikasjoner og vurdere ekstern logglagring for historikk og sikkerhet.