Hvordan finne og endre system-loggfiler
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/syslogellerless /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 -foggrep: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.confmed 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.confeller/etc/rsyslog.confog 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.confog/etc/logrotate.d/. - Eksempel på enkel konfig for
/var/log/myapp.logi/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) ellersudo 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 (installerlogwatch).
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.
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/syslogellerless /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 -foggrep: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.confmed 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.confeller/etc/rsyslog.confog 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.confog/etc/logrotate.d/. - Eksempel på enkel konfig for
/var/log/myapp.logi/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) ellersudo 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 (installerlogwatch).
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.
Legg igjen en kommentar