Logbeskeder er vigtige for revision og vedligeholdelse af et sundt Linux-system. Hver Linux-computer gemmer logbeskeder til forskellige tjenester eller job. Denne guide vil undersøge, hvordan man læser og analyserer logbeskeder ved hjælp af journalctl, et kommandolinjeværktøj til læsning af logbeskeder skrevet af journald.
Hvad er journald?
Journald er en systemloggingstjeneste, der samler logmeddelelser i en journal. Det er en del af systemdæmonen, der er ansvarlig for hændelseslogning i Linux. Journalen er simpelthen en binær fil, der bruges til lagring af logmeddelelser genereret af journald.
Journallogbeskeder er ikke vedvarende, fordi de er gemt i RAM, som er en ustabil form for opbevaring. Som standard mistes eller slettes journald-logfiler, når din pc genstarter eller mister strøm. Linux tildeler en fast mængde RAM til journald-logfiler for at undgå tilstopning af dit systems hukommelse.
Sådan bruges journalctl-kommandoen
Du kan bruge journalctl til at forespørge systemd-journal eller journald-logfiler. Systemet indekserer alle journald-logfiler for at forbedre effektiviteten, når du læser logbeskeder fra journalen.
Bemærk: Denne vejledning bruger sudo at køre kommandoer ved hjælp af forhøjede privilegier, fordi journalctl-kommandoen ikke viser alle logbeskeder, når du kører den som en almindelig Linux-bruger.
Vis alle logmeddelelser
For at se alle journald-logfiler skal du blot køre journalctl-kommandoen uden argumenter:
sudo journalctl
Kommandoen journalctl viser alle journald-logfiler på dit system i kronologisk rækkefølge. Kommandoen bruger mindre i baggrunden, som giver dig den samme navigationsevne, som du generelt ville have med mindre kommando. For eksempel kan du navigere gennem logfilerne ved hjælp af F og B tasterne på dit tastatur.
Hvis du vil ændre den rækkefølge, som systemet udfører logfilerne, dvs. vise den nyeste først, kan du bruge -r flag med kommandoen. Det -r flag står for Baglæns.
sudo journalctl -r
Se Kernel journald Logs
Kernelogfiler er meget vigtige på Linux, fordi de indeholder oplysninger relateret til dit system fra det tidspunkt, hvor det starter op. Hvis du kun vil se kernelogfiler, skal du angive -k flag med journalctl-kommandoen:
sudo journalctl -k
Outputtet viser også nogle kerneoplysninger, såsom kerneversionen og dens navn.
Relaterede: Hvad er en kerne i Linux, og hvordan kontrollerer du din version?
Filtrer journald-logfiler efter et specifikt program
Du kan også se logfiler, der er relateret til et bestemt program eller en bestemt tjeneste, ved hjælp af journalctl. For eksempel for at få vist logfiler tilknyttet cron service, kør kommandoen nedenfor:
sudo journalctl -u cron
Se logmeddelelser i realtid
Nogle gange vil du muligvis se logfilerne i realtid, da de logges. Til dette skal du udstede følgende kommando:
sudo journalctl -f
Brug Ctrl + C tastaturgenvej for at afslutte realtidsvisningen.
Få logmeddelelser efter dato
Du kan bruge journalctl til at filtrere og analysere logfilerne ved hjælp af en tidsstempel. For eksempel for at få vist logfiler fra i går og indtil nu:
sudo journalctl --since = i går
Du kan være mere specifik ved at bruge en detaljeret "siden" og "indtil" tidsstempel som følger:
sudo journalctl --since = "2021-07-17 12:00:00" --tiltil = "2021-07-17 15:00:00"
Journalctl viser kun logmeddelelserne i den angivne periode.
Se logmeddelelser efter UID eller PID
Du kan også filtrere journald-logfiler ved hjælp af bruger-ID (UID) eller proces-ID (PID). Den grundlæggende syntaks er:
sudo journalctl _UID = 0
... hvor 0 er UID for rodkontoen. Du kan også erstatte UID i den ovennævnte kommando med enten PID eller GID (gruppe-ID).
Formatering af journalctl-output
Hvis du vil se journalctl-logfiler i et specifikt outputformat, skal du bruge journalctl -o kommando efterfulgt af dit foretrukne format. For eksempel for at få vist logfilerne i et smukt JSON-format skal du køre kommandoen nedenfor:
sudo journalctl -o json-smuk
Produktion:
Relaterede: Kom godt i gang med systemlogning i Linux
Konfiguration af journald på Linux
Denne guide har vist dig, hvordan du kan se og analysere journald-logbeskeder på Linux ved hjælp af journalctl-kommandoen. Det /var/log/journal bibliotek gemmer alle journald-logfiler. Bemærk, at ikke alle Linux-distroer er journald aktiveret som standard.
Du kan bruge /etc/systemd/journald.conf fil for at konfigurere eller foretage ændringer i journald-konfigurationen på din pc. Bortset fra en effektiv logningstjeneste er der flere andre værktøjer, der er et must, hvis du er seriøs omkring sikkerheden på dine Linux-servere.
Vil du ikke gå på kompromis med sikkerheden på din Linux-server? Installer disse seks værktøjer til at oprette et uigennemtrængeligt netværk.
Læs Næste
- Linux
- Linux Elementary
- Linux-kommandoer
- Systemadministration

Mwiza udvikler software efter erhverv og skriver udførligt om Linux og front-end programmering. Nogle af hans interesser inkluderer historie, økonomi, politik og virksomhedsarkitektur.
Abonner på vores nyhedsbrev
Deltag i vores nyhedsbrev for tekniske tip, anmeldelser, gratis e-bøger og eksklusive tilbud!
Klik her for at abonnere