Systemlogger er din beste venn når du vil feilsøke feil. Her er alt du trenger å vite om overvåkingslogger på Ubuntu.

Det er ekstremt frustrerende når datamaskinen din ikke fungerer som den skal og du ikke vet hvorfor. Selv om det ikke er enkle løsninger på alle problemer du kan støte på i Ubuntu, kan du bruke ressurser som Ubuntu-feilloggene for å feilsøke og diagnostisere PC-problemene dine.

Hva er Ubuntu-logger?

Ubuntu logger er omfattende filer som lagrer en oversikt over alle hendelsene som skjer på datamaskinen din. Den inkluderer logget informasjon om maskinvaren, operativsystemet og til og med noe av programvaren din.

Disse loggene er uvurderlige for feilsøkings- og diagnostiseringsprosessen. De gir informasjon som tidsstempler, kontekst og dybdedetaljer om hendelser som skjer på tvers av systemet ditt. For å bruke disse loggene, må du først vite om de viktigste typene.

Typer Ubuntu-logger

I stedet for å skrive hver bit av informasjon i én logg, registrerer Ubuntu informasjon i separate logger designet for forskjellige formål. Selv om det er for mange logger å liste opp, er det noen få viktige logger (og loggtyper) du bør være oppmerksom på før du prøver å bruke dem til feilsøking.

instagram viewer

Den kanskje mest fremtredende av alle loggene er systemd-journalen. systemd er en integrert tjenestebehandling i Linux. Som et resultat blir problemer med mange forskjellige operativsystemtjenester registrert i systemd-journalen. Du kan navigere i denne loggen med journalctl-kommandoen.

Systemloggene er også svært viktige. Disse loggene gjelder direkte forskjellige deler av Ubuntu og kan inkludere ting som systemmeldinger. Noen av systemloggene inkluderer:

  • Autorisasjonsloggen: Enhver prosess som krever autorisasjon, for eksempel en sudo-kommando eller brukerpålogginger, vil bli registrert i denne loggen.
  • Demon-loggen: Denne loggen gjelder alle bakgrunnstjenester (eller demoner), slik som Bluetooth og SSH.
  • Feilsøkingsloggen: Denne loggen gir feilsøkingsinformasjon levert av systemet, så vel som applikasjoner som logger på syslogd.
  • Kjerneloggen: Denne loggen inkluderer registreringer av aktivitet som involverer Linux-kjernen.
  • Systemloggen: Denne loggen lagrer poster som inkluderer de fleste typer global aktivitet på systemet ditt.
  • Feilloggen: Denne loggen lagres registreringer av mislykkede pålogginger, noe som gjør det spesielt nyttig for å sjekke om noen har forsøkt å bryte seg inn i systemet ditt.

Datamaskinen din kan også ha applikasjonslogger (som Apache-loggfiler eller MySQL-loggfiler) lagret i /var/log katalog. Du kan bruk ls-kommandoen for å se alle loggfilene som er lagret på datamaskinen din:

ls /var/log

Hvordan lese logger på Ubuntu

Nå som du er kjent med de forskjellige typene logger på systemet ditt, er du klar til å fordype deg i informasjonen de lagrer. Før du starter, er det viktig å merke seg at ikke alle systemlogger er skrevet på samme måte.

Noen logger lagres som rentekstfiler, mens andre logger lagres som binære filer. Du må gjøre deg kjent med begge typer filer - og kommandolinjeverktøyene de er sammenkoblet med - hvis du vil analysere postene på systemet ditt effektivt.

Fillogger i ren tekst bruker en mal kjent som RSYSLOG_TraditionalFileFormat og inkluderer fire grunnleggende felt: tidsstempel, vertsnavn, applikasjon og melding. For eksempel bruker kjerneloggen denne malen:

I motsetning til rentekstlogger, kan binære fillogger ikke leses like lett. Du må bruke kommandolinjeverktøy som WHO, siste, og sisteb for å lese logger som henholdsvis utmp, wtmp og btmp. Kommandoer som utmpdump for utmp-varianter og systemctl for journald er også designet for å skrive ut binær logginformasjon i et lesbart format.

I de fleste situasjoner vil det være viktig å vite hvordan man analyserer disse loggene effektivt i terminalen. Du kan bruke kommandoer som grep og tail for å hente spesifikk informasjon uten å måtte lese nøye gjennom hele systemloggene dine.

Noen av de beste kommandoene du kan bruke inkluderer:

  • grep: Søker etter en streng med tegn i en fil
  • hale: Skriver ut 10 linjer fra slutten av en fil
  • hode: Skriver ut 10 linjer fra begynnelsen av en fil
  • sortere: Skriver ut en fil omorganisert til dine spesifikasjoner

Kommandolinjeverktøy som utmpdump og systemctl har også nyttige flagg som du bør huske på når du arbeider i terminalen. Disse flaggene vil tillate deg å endre kommandoen og ha økt kontroll over hva som skrives ut i terminalen.

Noen spesielt nyttige flagg for journalctl-kommandoen er:

  • -b: Fører til at journalctl bare returnerer oppføringer samlet etter siste omstart
  • --siden "ÅÅÅÅ-MM-DD TT: MM: SS" --til "ÅÅÅÅ-MM-DD TT: MM: SS": Instruerer journalctl til kun å returnere oppføringer før og/eller etter de angitte datoene
  • -p NUM: Filtrerer oppføringer etter deres syslog-prioritetsnivåer (fra 0/emerg til 7/debug)

Feilsøking av feil med Ubuntu-logger

Nå som du er kjent med de forskjellige typene systemlogger og vet hvordan du leser gjennom dem effektivt er det eneste som gjenstår å bruke informasjonen du har samlet til feilsøkingen prosess. Denne prosessen krever vanligvis litt kreativitet.

Det er en god idé å nærme seg feilsøking ved å tenke på de fremtredende egenskapene til problemet du arbeider med først. Oppstår problemet når du åpner et bestemt program? Krasjer og starter systemet på nytt hver gang problemet oppstår?

Når du tenker på egenskapene til problemet, vil det naturligvis føre deg til noen av de beste loggene for å hente informasjon om det. For eksempel, hvis systemet ditt har problemer under oppstartsprosessen, kan du kanskje få nyttig informasjon ved å referere til oppstartsoppføringene i journald.

Skriv inn følgende kommando for å skrive ut alle de loggede støvlene i journald:

journalctl --list-boots

Terminalen vil skrive ut en liste over registrerte støvler; de nyeste støvlene finner du nederst på listen. Se på registrerte datoer og klokkeslett for hver oppstart til du kan finne en logget oppstart der feilen oppsto.

Ta nummeret fra kolonnen lengst til venstre som NUM og skriv inn følgende kommando for å få mer informasjon om oppstarten:

journalctl -b -NUM -n

En omfattende oversikt over informasjon om oppstarten vil bli vist. Hvis det oppstod uvanlige feil under oppstartsprosessen, kan du bruke informasjonen fra denne posten for å komme et skritt videre i feilsøkingen.

Det samme prinsippet gjelder for mange andre saker. Hvis du ikke vet mye om problemet datamaskinen din opplever, kan det imidlertid være vanskelig å vite hvor du skal begynne. Det er noen få logger som skiller seg ut som spesielt nyttige for et bredt spekter av problemer med Ubuntu-systemer.

syslog er den beste loggen å starte med under feilsøkingsprosessen. Siden det faktisk er en global logg, er det svært sannsynlig at den har litt informasjon om problemet du har å gjøre med. Hvis du har problemer med autentisering (som sudo-passordet fungerer ikke feil, for eksempel) eller oppstart, og sjekk deretter auth.log eller boot.log.

Søk gjennom de mest relevante loggene med nøkkelord relatert til problemet ditt. Hvis du for eksempel har problemer med autentisering, kan du hente poster fra auth.log med følgende kommando:

cat /var/log/auth.log | grep 'Autentiseringsfeil'

Til slutt vil du garantert finne informasjon som gir utmerket innsikt. Når du kobler informasjon fra feilloggene med undersøkelser på nettet, vil du sannsynligvis finne ressurser som vil hjelpe deg med å løse problemer med systemet ditt på kort tid.

Referer til nettressurser for å feilsøke Linux-feil

Du trenger ikke gå gjennom feilsøkingsprosessen alene. Når du samler inn informasjon om problemet med datamaskinen din, bør du bruke nettressurser som Spør Ubuntu og de detaljerte veiledningene på MakeUseOf for å komme nærmere endelig diagnostisering og reparasjon av din PC.