Linux-kommandoer

En introduksjon til Linux dmesg Command

En introduksjon til Linux dmesg Command
Hvert operativsystem, inkludert Linux, utfører noen aktiviteter stille uten å varsle brukeren. Selv om brukeren ikke er klar over disse aktivitetene, kan det være nødvendig å sjekke disse aktivitetene for å identifisere operativsystemproblemer og enhetene som er koblet til datasystemet.

Heldigvis, for Linux-operativsystemet, er alle disse aktivitetene logget i ringbufferen, som du kan få tilgang til ved hjelp av kommandoen diagnostiske meldinger (eller dmesg). Dmesg-kommandoen i Linux kan brukes til å vise alle meldingene relatert til hendelsene som skjer i operativsystemet ditt. Denne artikkelen vil lære deg hvordan du bruker denne nyttige kommandoen i Linux.

Merk: For denne opplæringen brukte vi Linux Mint 20

Kommandobruk

Vi vil forklare bruken av diagnosemeldinger ved å diskutere noen få eksempler.

Eksempel 1: Vise alle diagnostiske meldinger

Vi kan vise alle typer diagnostiske meldinger samtidig ved å utføre disse trinnene.

Først må vi klikke på snarveisikonet til Linux Mint 20-terminalen for å starte den.

Du kan se den nylig lanserte terminalen i bildet nedenfor:

Nå vil vi bare kjøre følgende kommando i terminalen:

Å kjøre denne kommandoen vil vise en lang liste med diagnostiske meldinger på terminalen din. Du kan bla nedover for å se alle meldingene, som vist på bildet nedenfor:

Eksempel 2: Vise diagnosemeldinger side etter side

I forrige eksempel var listen over diagnostiske meldinger veldig lang og upraktisk å lese. Derfor vil du kanskje se disse meldingene side for side. som kan gjøres ved å bruke mindre kommando i Linux. I kommandoen vist nedenfor, rør vi utgangen fra dmesg-kommandoen til mindre kommando, slik at diagnostiske meldinger vises side for side.

Du kan se utdataene fra den modifiserte dmesg-kommandoen i bildet nedenfor.

Når du har lest gjennom den første siden, kan du trykke på mellomromstasten for å gå til neste side, og så videre, til den siste siden er nådd, som angitt av SLUT-nøkkelordet i følgende bilde:

Eksempel 3: Vis diagnostiske meldinger med et spesifikt alvorlighetsnivå

Alvorlighetsgraden av diagnostiske meldinger varierer avhengig av formålet de tjener. For eksempel gir noen meldinger generell informasjon, mens andre inneholder advarsler. Du kan velge å vise alle diagnosemeldingene på et spesifisert alvorlighetsnivå på følgende måte:

Kjør først kommandoen dmesg -level = LEVEL i Linux Mint 20-terminalen. Her må du erstatte LEVEL med et gyldig nivå (f.eks.g., feile, advare, info, merke). I vårt eksempel, fordi vi ønsker å se alle diagnostiske meldinger på feilnivået, erstattet vi LEVEL med err.

Denne kommandoen returnerer alle diagnosemeldingene som har feilnivået, som vist i følgende bilde:

Eksempel # 4: Vise Linux-versjonen med dmesg Command

Da vi kjørte dmesg-kommandoen uten andre parametere, var utgangen for stor til å vises på en gang. Sammen med all annen informasjon ble versjonen av Linux-systemet ditt også vist i den utgangen, men det var vanskelig å finne. Hvis du ønsker å se Linux-versjonen din med kommandoen dmesg, kan du kjøre følgende kommando i terminalen:

Når du kjører denne kommandoen, vises Linux-versjonen på terminalen din som vist på bildet nedenfor:

Eksempel 5: Vis diagnostiske meldinger med tidsstempler

En hendelse inntreffer i et operativsystem på et bestemt tidspunkt. For logg- og revisjonsoppgaver er det viktig å se på tidsstemplene for hendelsene som finner sted i operativsystemet ditt, slik at du kan finne ut når et problem oppstod. For å se tidsstempel på diagnosemeldingene, kan du kjøre kommandoen nedenfor i terminalen din:

Utdataene i det følgende bildet viser de nøyaktige tidsstemplene, inkludert dag, dato og klokkeslett, før hver diagnosemelding.

Eksempel 6: Vise diagnostiske meldinger relatert til en bestemt enhet

Diagnosemeldingene som vises ved å kjøre kommandoen dmesg alene, er ikke spesifikke for noen enhet; i stedet vises meldingene knyttet til alle enhetene samtidig. Det kan imidlertid være lurt å se diagnosemeldingene for en bestemt enhet for å bestemme problemene som bare er knyttet til den enheten.

Dmesg-kommandoen lar deg gjøre det ved å kjøre kommandoen dmesg | grep -i “ENHET”. Her må du erstatte DEVICE med navnet på enheten hvis diagnosemeldinger du vil vise. I vårt tilfelle vil vi sjekke diagnosemeldingene til musen. Derfor har vi erstattet DEVICE med Mouse.

Når du vil kjøre denne kommandoen, vil alle diagnostiske meldinger relatert til musen vises på terminalen din, som vist på følgende bilde. Du kan vise diagnosemeldingene til hvilken som helst I / O-enhet på samme måte.

Eksempel 7: Vise diagnostiske meldinger med alvorlighetsnivået

Vi så på diagnosemeldingene til et bestemt alvorlighetsnivå i eksempel # 3. Men hvis vi vil vise alle diagnosemeldingene med alvorlighetsgraden, kan vi kjøre kommandoen dmesg -x. Flagget -x kan brukes med dmesg-kommandoen for å vise diagnosemeldingene med alvorlighetsgraden.

Du kan se fra følgende utdata at alvorlighetsgraden til en diagnostisk melding vises i begynnelsen av meldingen.

Eksempel 8: Tømning av historikken om diagnostiske meldinger

Tusenvis av hendelser finner sted i operativsystemet som gjengir operativsystemet ditt, og disse hendelsene genererer en lang liste med diagnostiske meldinger, som vist i eksempel 1. Imidlertid gir Linux-systemet også en måte å tømme denne loggen på.

For å tømme historikken om diagnostiske meldinger kan du kjøre kommandoen sudo dmesg -C. For å tømme historikken om diagnostiske meldinger, som er viktig for revisjonsformål, må du kjøre dmesg-kommandoen med sudo-rettigheter. Ellers har du ikke lov til å utføre denne operasjonen. Videre er -C-flagget, kombinert med dmesg-kommandoen, ansvarlig for å rydde dmesg-loggen.

Når du har kjørt denne kommandoen, vil ingenting vises på terminalen din. Derfor, for å bekrefte at historikken om diagnostiske meldinger er tømt, kjører vi kommandoen dmesg igjen. Denne gangen vil ikke dmesg-kommandoen returnere noen diagnostiske meldinger på terminalen din fordi historikken er slettet.

Konklusjon

Denne opplæringen introduserer diagnostiske meldinger generert av Linux-operativsystemet og viser deg hvordan du viser tidsstemplene for hendelsene som skjedde på operativsystemet, hvordan du registrerer alle hendelser med et spesifisert alvorlighetsnivå, og hvordan du viser diagnostiske meldinger relatert til en bestemt enhet. Mer avanserte varianter av dmesg-kommandoen som deles i denne artikkelen, kan produseres for å oppnå forskjellige resultater.

Topp 5 spillfangstkort
Vi har alle sett og elsket streaming av spill på YouTube. PewDiePie, Jakesepticye og Markiplier er bare noen av de beste spillerne som har tjent milli...
Hvordan utvikle et spill på Linux
For et tiår siden ville ikke mange Linux-brukere forutsi at deres favorittoperativsystem en dag ville være en populær spillplattform for kommersielle ...
Åpne kildeporter for kommersielle spillmotorer
Gratis, åpen kildekode og plattformspillmotorrekreasjoner kan brukes til å spille gamle så vel som noen av de ganske nylige spilletitlene. Denne artik...