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.

instagram viewer

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.

E-mail
6 Must-Have open source-værktøjer til at sikre din Linux-server

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

Relaterede emner
  • Linux
  • Linux Elementary
  • Linux-kommandoer
  • Systemadministration
Om forfatteren
Mwiza Kumwenda (30 artikler udgivet)

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.

Mere fra Mwiza Kumwenda

Abonner på vores nyhedsbrev

Deltag i vores nyhedsbrev for tekniske tip, anmeldelser, gratis e-bøger og eksklusive tilbud!

Klik her for at abonnere