DMESG(1) Användarkommandon DMESG(1)

dmesg - skriva ut eller kontrollera kärnans ringbuffert

dmesg [flaggor]

dmesg --clear

dmesg --read-clear [flaggor]

dmesg --konsolnivå nivå

dmesg --konsol-på

dmesg --konsol-av

dmesg används för att undersöka eller kontrollera kärnans ringbuffert.

Standardåtgärden är att visa alla meddelanden från kärnans ringbuffert.

Flaggorna --clear, --read-clear, --console-on, --console-off och --console-level är ömsesidigt uteslutande.

-C, --clear

Rensa ringbufferten.

-c, --read-clear

Rensa ringbufferten efter den första utskriften av dess innehåll.

-D, --console-off

Inaktivera utskrift av meddelanden till konsolen.

-d, --show-delta

Visar tidsstämpel och tidsdelta mellan meddelanden. Om det används tillsammans med --notime skrivs endast tidsdelta utan tidsstämpel ut.

-E, --console-on

Aktivera utskrift av meddelanden till konsolen.

-e, --reltime

Visa den lokala tiden och deltat i ett läsbart format. Tänk på att konverteringen till lokal tid kan vara felaktig (se -T för mer information).

-F, --file fil

Läser syslog-meddelanden från den angivna filen. Observera att -F inte stöder meddelanden i kmsg-format. Se -K istället.

-f, --facility lista

Begränsa utdata till den angivna (kommaseparerade) listan med faciliteter. Till exempel:

dmesg --facility=daemon

skriver endast ut meddelanden från systemets daemons. För alla funktioner som stöds, se --help.

-H, --human

Aktiverar utdata som är läsbar för människor. Se även --color, --reltime och --nopager.

-J, --json

Använd JSON-utmatningsformat. Utdataformatet för tid är endast i formatet "sec.usec", loggens prioritetsnivå avkodas inte som standard (använd --decode för att dela upp i facilitet och prioritet), övriga flaggor för att styra utdataformatet eller tidsformatet ignoreras i tysthet.

-K, --kmsg-file fil

Läser /dev/kmsg-meddelanden från den angivna filen. Olika poster som förväntas vara separerade med en NULL-byte.

-k, --kernel

Skriv ut kernel-meddelanden.

-L, --color[=när]

Färglägger utdata. Det valfria argumentet när kan vara auto, never eller always. Om argumentet när utelämnas är standardvärdet auto. Färgerna kan inaktiveras; för den aktuella inbyggda standardinställningen, se utdata --help. Se även avsnittet FÄRGER nedan.

-l, --level lista

Begränsa utdata till den angivna (kommaseparerade) listan med nivåer. Till exempel:

dmesg --level=err,warn

skriver endast ut fel- och varningsmeddelanden. För alla nivåer som stöds, se --help-utskriften.

Om du lägger till ett plus + till ett nivånamn inkluderas även alla högre nivåer. Till exempel:

dmesg --nivå=err+

kommer att skriva ut nivåerna err, crit, alert och emerg.

Prepending det kommer att omfatta alla lägre nivåer.

-n, --console-level nivå

Ange på vilken nivå meddelanden ska skrivas ut till konsolen. nivå är ett nivånummer eller en förkortning av nivåns namn. För alla nivåer som stöds, se --help.

Till exempel förhindrar -n 1 eller -n emerg att alla meddelanden, utom nödmeddelanden (panikmeddelanden), visas på konsolen. Alla nivåer av meddelanden skrivs fortfarande till /proc/kmsg, så syslogd(8) kan fortfarande användas för att kontrollera exakt var kärnmeddelanden visas. När flaggan -n används kommer dmesg inte att skriva ut eller rensa kärnans ringbuffert.

--noescape

De otryckbara och potentiellt osäkra tecknen (t.ex. brutna multibyte-sekvenser, terminalstyrande tecken etc.) escapas i formatet \x<hex> av säkerhetsskäl som standard. Denna flagga inaktiverar denna funktion helt och hållet. Det är användbart för t.ex. felsökning tillsammans med --raw. Var försiktig och använd det inte som standard.

-P, --nopager

Pipa inte utdata till en personsökare. En personsökare är aktiverad som standard för --mänsklig utdata.

-p, --force-prefix

Lägg till information om facilitet, nivå eller tidsstämpel på varje rad i ett meddelande med flera rader.

-r, --raw

Skriv ut den råa meddelandebufferten, d.v.s. ta inte bort prefixen på loggnivån, men alla tecken som inte kan skrivas ut escapas ändå (se även --noescape).

Observera att det verkliga råformatet beror på metoden för hur dmesg läser kärnmeddelanden. Enheten /dev/kmsg använder ett annat format än syslog(2). För bakåtkompatibilitet returnerar dmesg alltid data i syslog(2)-format. Det är möjligt att läsa riktiga rådata från /dev/kmsg med t.ex. kommandot 'dd if=/dev/kmsg iflag=nonblock'.

-S, --syslog

Tvinga dmesg att använda syslog(2)-kärngränssnittet för att läsa kärnmeddelanden. Standardinställningen är att använda /dev/kmsg i stället för syslog(2) sedan kärnan 3.5.0.

-s, --buffer-size storlek

Använd en buffert av storleken storlek för att fråga efter kärnans ringbuffert. Denna är 16392 som standard. (Standardstorleken för syslog-bufferten i kärnan var 4096 i början, 8192 sedan 1.3.54, 16384 sedan 2.1.113.) Om du har ställt in kärnbufferten så att den är större än standardvärdet kan du använda den här flaggan för att visa hela bufferten.

-T, --ctime

Skriv ut tidsmarkörer som är läsbara för människor.

Tänk på att tidsstämpeln kan vara felaktig! Tidskällan som används för loggarna uppdateras inte efter systemets VÄNTELÄGE/ÅTERUPPTAGNING. Tidsstämplar justeras enligt aktuellt delta mellan starttid och monotona klockor, detta fungerar endast för meddelanden som skrivs ut efter senaste återupptagningen.

--since time

Visar poster sedan den angivna tiden. Subsekunders granularitet stöds. Det går att ange tiden både absolut och relativt (t.ex. "för 1 timme sedan"). Tänk på att tidsstämpeln kan vara felaktig och se --ctime för mer information.

--until time

Visa poster fram till angiven tidpunkt. Subsekundersgranularitet stöds. Det är möjligt att ange tiden både absolut och relativt (t.ex. "för 1 timme sedan"). Tänk på att tidsstämpeln kan vara felaktig och se --ctime för mer information.

-t, --notime

Skriv inte ut kärnans tidsstämplar.

--time-format format

Skriv ut tidsstämplar med det angivna formatet, som kan vara ctime, reltime, delta, iso eller raw. De tre första formaten är alias för de tidsformatspecifika flaggor. Formatet raw använder standardformatet för tidsstämpel som visar sekunder sedan start. Formatet iso är en dmesg-implementering av tidsstämpelformatet ISO-8601. Syftet med det här formatet är att göra det enkelt att jämföra tidsstämplar mellan två system och att göra andra analyser. Definitionen av iso-tidsstämpeln är: YYYY-MM-DD<T>HH:MM:SS,<microseconds>←+><timezone offset from UTC>.

Formatet iso har samma problem som ctime: tiden kan vara felaktig när ett system avbryts och återupptas.

--time-format kan användas flera gånger med olika värden för format för att mata ut varje angivet format.

Delta följer alltid efter ctime eller raw om de anges tillsammans.

-u, --userspace

Skriv ut meddelanden i användarutrymmet.

-w, --follow

Vänta på nya meddelanden. Denna funktion stöds endast på system med en läsbar /dev/kmsg (sedan kernel 3.5.0).

-W, --follow-new

Vänta och skriv endast ut nya meddelanden.

-x, --decode

Avkoda facilitet- och nivånummer (prioritet) till prefix som kan läsas av människor.

-h, --help

Visa hjälptext och avsluta.

-V, --version

Visa version och avsluta.

Färgläggningen av utdata implementeras av terminal-colors.d(5) funktionalitet. Implicit färgläggning kan inaktiveras med en tom fil

/etc/terminal-colors.d/dmesg.disable

för kommandot dmesg eller för alla verktyg med

/etc/terminal-colors.d/disable

Sedan version 2.41 stöds även miljövariabeln $NO_COLOR som inaktiverar färgläggning av utdata om den inte uttryckligen aktiveras med en kommandoradsflagga.

Den användarspecifika $XDG_CONFIG_HOME/terminal-colors.d eller $HOME/.config/terminal-colors.d åsidosätter den globala inställningen.

Observera att färgläggningen av utdata kan vara aktiverad som standard, och i så fall behöver inte terminal-colors.d-katalogerna finnas ännu.

De logiska färgnamn som stöds av dmesg är:

subsys

Prefixet för meddelandets undersystem (t.ex. "ACPI:").

tid

Meddelandets tidsstämpel.

tidsbrytning

Meddelandets tidsstämpel i kort ctime-format i --reltime- eller --human-utdata.

alert

Texten i meddelandet med prioritet för varningsloggen.

crit

Texten i meddelandet med den kritiska loggprioriteten.

fel

Texten i meddelandet med prioritet för felloggen.

warn

Texten i meddelandet med prioritet för varningsloggen.

segfault

Texten i meddelandet som informerar om segmenteringsfelet.

dmesg kan misslyckas med att rapportera felet "permission denied". Detta orsakas vanligtvis av dmesg_restrict-kärninställningen, se syslog(2) för mer information.

Karel Zak <kzak@redhat.com>

dmesg skrevs ursprungligen av Theodore Ts’o <tytso@athena.mit.edu>.

terminal-colors.d(5), syslogd(8)

För felrapporter, använd felhanteraren https://github.com/util-linux/util-linux/issues.

Kommandot dmesg ingår i paketet util-linux som kan hämtas från Linux Kernel Archive https://www.kernel.org/pub/linux/utils/util-linux/.

2026-05-18 util-linux 2.42.1