En introduksjon til Linuxs DMESG -kommando

En introduksjon til Linuxs DMESG -kommando
Hvert operativsystem, inkludert Linux, utfører noen aktiviteter lydløst uten å varsle brukeren. Selv om brukeren ikke er klar over disse aktivitetene, kan det være nødvendig å sjekke disse aktivitetene for å identifisere problemer med operativsystemet og enhetene som er knyttet til datasystemet.

Heldigvis, for Linux -operativsystemet, er alle disse aktivitetene logget i ringbufferen, som kan nås ved å bruke kommandoen Diagnostic Messages (eller DMESG). DMESG -kommandoen i Linux kan brukes til å vise alle meldingene relatert til hendelsene som finner sted 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 kommandoen for diagnostiske meldinger ved å diskutere noen få eksempler.

Eksempel 1: Vis alle diagnostiske meldinger

Vi kan se alle typer diagnostiske meldinger på en gang ved å utføre disse trinnene.

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

Du kan se den nylig lanserte terminalen på bildet nedenfor:

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

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

Eksempel nr. 2: Visning av diagnostiske meldinger Side for side

I forrige eksempel var listen over diagnostiske meldinger veldig lang og upraktisk å lese. Derfor kan det være lurt å se disse meldingene side for side. som kan gjøres ved å bruke den mindre kommandoen i Linux. I kommandoen som er vist nedenfor, piperer vi utdataene fra DMESG -kommandoen til den mindre kommandoen, slik at diagnostiske meldinger vises side for side.

Du kan se utgangen fra den modifiserte DMESG -kommandoen på bildet nedenfor.

Når du har lest gjennom første side, kan du trykke på romfeltet for å flytte til neste side, og så videre, til siste side er nådd, som indikert med sluttsøknaden i følgende bilde:

Eksempel nr. 3: Vise diagnostiske meldinger med et spesifikt alvorlighetsnivå

Alvorlighetsnivået av diagnostiske meldinger varierer avhengig av formålet de tjener. For eksempel formidler noen meldinger generell informasjon, mens andre inneholder advarsler. Du kan velge å se alle diagnostiske meldingene til et spesifisert alvorlighetsnivå som følger:

Først, kjør kommandoen DMESG -VEVEL = nivå i Linux Mint 20 -terminalen. Her må du erstatte nivået med et gyldig nivå (e.g., feil, advare, info, legg merke til). I vårt eksempel, fordi vi vil se alle diagnostiske meldinger om feilnivået, erstattet vi nivå med feil.

Denne kommandoen vil returnere alle diagnostiske meldingene som har feilnivået, som vist i følgende bilde:

Eksempel 4: Vise Linux -versjonen med DMESG -kommandoen

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

Å kjøre denne kommandoen vil vise Linux -versjonen på terminalen din som vist på bildet nedenfor:

Eksempel 5: Vise diagnostiske meldinger med tidsstempler

En hendelse skjer på et operativsystem på et bestemt tidspunkt. For hogst- og revisjonsoppgaver er det viktig å se på tidsstempene til hendelsene som foregår i operativsystemet ditt, slik at du kan finne ut når et problem oppsto. For å se tidsstempene til diagnostiske meldingene, kan du kjøre kommandoen nedenfor i terminalen din:

Utgangen i følgende bilde viser de eksakte tidsstempene, inkludert dag, dato og tid, før hver diagnostisk melding.

Eksempel 6: Vise de diagnostiske meldingene relatert til en bestemt enhet

De diagnostiske meldingene som vises ved å kjøre DMESG -kommandoen alene er ikke spesifikke for noen enhet; I stedet vises meldingene relatert til alle enheter på en gang. Det kan imidlertid være lurt å se diagnostiske meldinger for en bestemt enhet for å bestemme problemene som er relatert til den enheten bare.

DMESG -kommandoen lar deg gjøre det ved å kjøre kommandoen DMESG | grep -i “enhet”. Her må du bytte ut enheten med navnet på enheten hvis diagnostiske meldinger du vil se. I vårt tilfelle ønsker vi å sjekke musens diagnostiske meldinger. Derfor har vi erstattet enhet med mus.

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

Eksempel nr. 7: Vise diagnostiske meldinger med alvorlighetsnivået

Vi så på diagnostiske meldingene til et bestemt alvorlighetsnivå i eksempel nr. 3. Imidlertid, hvis vi ønsker å vise alle diagnostiske meldinger med alvorlighetsnivået, kan vi kjøre kommandoen DMESG -x. -X -flagget kan brukes med DMESG -kommandoen for å vise diagnostiske meldinger med alvorlighetsnivået.

Du kan se fra følgende utgang at alvorlighetsnivået til en diagnostisk melding vises i begynnelsen av meldingen.

Eksempel nr. 8: Rydding av diagnostiske meldingshistorikk

Tusenvis av hendelser finner sted i operativsystemet som gjengir OS, og disse hendelsene genererer en lang liste over diagnostiske meldinger, som vist i eksempel nr. 1. Linux -systemet gir imidlertid også en måte å fjerne denne loggen.

For å tømme dine diagnostiske meldingshistorikk, kan du kjøre kommandoen sudo dmesg -c. For å fjerne diagnostiske meldingshistorikk, som er viktig for revisjonsformål, må du kjøre DMESG -kommandoen med sudo -privilegier. Ellers får du ikke lov til å utføre denne operasjonen. Videre er -C -flagget, kombinert med DMESG -kommandoen, er ansvarlig for å tømme DMESG -loggen.

Når du kjører denne kommandoen, vises ingenting på terminalen din. Derfor, for å bekrefte at diagnostiske meldingshistorien er ryddet, vil vi kjøre DMESG -kommandoen igjen. Denne gangen vil ikke DMESG -kommandoen returnere noen diagnostiske meldinger på terminalen din fordi historien er slettet.

Konklusjon

Denne opplæringen introduserer de diagnostiske meldingene generert av Linux -operativsystemet og viser deg hvordan du kan se tidsstempene til hendelsene som skjedde på operativsystemet, hvordan du registrerer alle hendelser i et spesifisert alvorlighetsnivå, og hvordan du kan se de diagnostiske meldingene relatert til en spesifikk enhet. Mer avanserte variasjoner av DMESG -kommandoen som deles i denne artikkelen kan produseres for å oppnå forskjellige resultater.