Dmesg

Aus Foxwiki

topic kurze Beschreibung

Beschreibung

Installation

Syntax

Parameter

Optionen

Umgebungsvariablen

Exit-Status

Konfiguration

Dateien

Anwendungen

Sicherheit

Dokumentation

RFC

Man-Pages

Info-Pages

Siehe auch

Links

Projekt-Homepage

Weblinks

Einzelnachweise


Testfragen

Testfrage 1

Antwort1

Testfrage 2

Antwort2

Testfrage 3

Antwort3

Testfrage 4

Antwort4

Testfrage 5

Antwort5

TMP

dmesg - den Kernel-Ringpuffer anzeigen und steuern

ÜBERSICHT

dmesg [Optionen]
dmesg --clear
dmesg --read-clear [Optionen]
dmesg --console-level Stufe
dmesg --console-on
dmesg --console-off

BESCHREIBUNG

  • dmesg wird zur Untersuchung und Steuerung des Kernel-Ringpuffers verwendet.
  • Die Vorgabeaktion beinhaltet das Anzeigen aller Meldungen des Kernel-Ringpuffers.

OPTIONEN Die Optionen --clear, --read-clear, --console-on, --console-off und --console-level schließen sich gegenseitig aus.

-C, --clear

   leert den Ringpuffer.

-c, --read-clear

   löscht den Inhalt des Ringpuffers, nachdem dessen Inhalt ausgegeben wurde.

-D, --console-off

   deaktiviert die Ausgabe der Meldungen in der Konsole.

-d, --show-delta

   zeigt den Zeitstempel und die zwischen den Meldungen vergangene Zeit an. Wenn Sie dies zusammen mit --notime verwenden, werden nur die Zeiträume
   ohne Zeitstempel angezeigt.

-E, --console-on

   aktiviert die Ausgabe der Meldungen in der Konsole.

-e, --reltime

   zeigt die lokale Zeit und den Zeitversatz im menschenlesbaren Format an. Denken Sie daran, dass die Umwandlung in die lokale Zeit ungenau sein
   kann. Weitere Details finden Sie in den Erläuterungen zu -T.

-F, --file Datei

   liest die Syslog-Nachrichten aus der angegeben Datei. Beachten Sie, dass -F keine Nachrichten im Kmsg-Format unterstützt. Es wird nur das alte
   Syslog-Format unterstützt.

-f, --facility Liste

   begrenzt die Ausgabe auf eine (durch Kommata getrennte) Liste der Einrichtungen. Zum Beispiel gibt
   dmesg --facility=Daemon
   ausschließlich Meldungen von Daemons (Systemdiensten) aus. Eine Liste aller möglichen Einrichtungen finden Sie in der Ausgabe des Befehls mit der
   Option --help.

-H, --human

   aktiviert die menschenlesbare Ausgabe. Siehe auch die Optionen --color, --reltime und --nopager.

-J, --json

   verwendet das JSON-Ausgabeformat. Die Zeit wird nur im Format »Sekunden.Mikrosekunden« ausgegeben, wobei die Prioritätsstufe der Protokollierung
   nicht ermittelt wird (mit --decode können Sie Einrichtung und Priorität voneinander trennen). Die anderen Optionen zur Steuerung des Ausgabe-
   oder Zeitformats werden stillschweigend ignoriert.

-k, --kernel

   gibt Kernelmeldungen aus.

-L, --color[=WANN]

   stellt die Ausgabe farbig dar. Das optionale Argument wann kann auto, never oder always sein. Falls wann nicht angegeben ist, ist auto die
   Voreinstellung. Die Farben können deaktiviert werden, für die aktuellen eingebauten Vorgabewerte schauen Sie sich die Ausgabe von --help an.
   Siehe auch den Abschnitt FARBEN weiter unten.

-l, --level Liste

   beschränkt die Ausgabe auf die (durch Kommata getrennte) Liste der Stufen. Zum Beispiel gibt
   dmesg --level=err,warn
   nur Fehlermeldungen und Warnungen aus. Rufen Sie dmesg --help auf, um eine Liste aller unterstützten Stufen zu sehen.

-n, --console-level Stufe

   setzt die Stufe (die Protokollierstufe) für die Ausgabe der Meldungen in der Konsole. Stufe ist dabei als Nummer oder Abkürzung des Namens der
   Stufe anzugeben. Rufen Sie dmesg --help auf, um eine Liste der unterstützten Stufen anzeigen zu lassen.
   Zum Beispiel unterdrücken -n 1 oder -n emerg alle Meldungen außer Notfallmeldungen (»panic«). Sämtliche Nachrichtenstufen werden noch nach
   /proc/kmsg geschrieben, so dass Sie mit syslogd(8) steuern können, wo Kernelmeldungen erscheinen. Mit der Option -n gibt dmesg keine Meldungen
   aus und löscht den Ringpuffer nicht.

--noescape

   Die nicht darstellbaren und potenziell unsicheren Zeichen (zum Beispiel beschädigte Multibyte-Sequenzen, Terminal-Steuerzeichen usw.) werden aus
   Sicherheitsgründen standardmäßig im Format \x<hex> maskiert. Diese Option deaktiviert dieses Funktionsmerkmal völlig. Es ist zum Beispiel
   zusammen mit --raw für Debugging-Zwecke nützlich. Seien Sie vorsichtig und verwenden Sie es nicht standardmäßig.

-P, --nopager

   leitet die Ausgabe nicht an ein Textanzeigeprogramm weiter. Ein Textanzeigeprogramm ist in der Voreinstellung aktiviert, wenn die Option --human
   verwendet wird.

-p, --force-prefix

   Fügt Einrichtungs-, Stufen- oder Zeitstempelinformationen zu jeder Zeile einer mehrzeiligen Nachricht hinzu.

-r, --raw

   zeigt den unverarbeiteten Meldungspuffer an. Die Präfixe der Protokollierstufen werden nicht entfernt, aber alle nicht darstellbaren Zeichen sind
   noch maskiert (siehe auch --noescape).
   Beachten Sie, dass das reale unverarbeitete Format davon abhängt, wie dmesg Kernelmeldungen liest. Das Gerät /dev/kmsg verwendet ein anderes
   Format als syslog(2). Um Abwärtskompatibilität zu gewährleisten, gibt dmesg die Daten stets im syslog(2)-Format zurück. Es ist dennoch möglich,
   dass die echten Rohdaten, beispielsweise mit dem Befehl »dd if=/dev/kmsg iflag=nonblock« aus /dev/kmsg gelesen werden.

-S, --syslog

   erzwingt, dass dmesg die syslog(2)-Kernelschnittstelle zum Lesen der Kernelmeldungen  verwendet. In der Voreinstellung wird seit Kernel 3.5.0
   /dev/kmsg anstatt syslog(2) bevorzugt.

-s, --buffer-size Größe

   verwendet einen Puffer der angegebenen Größe zur Abfrage des Kernel-Ringpuffers. Die vorgegebene Größe ist 16392. (Die Vorgabegröße war in der
   Vergangenheit zunächst 4096, dann 8192 seit Kernel 1.3.54 und 16384 seit Kernel 2.1.113) Falls Sie den Kernelpuffer größer gewählt haben als die
   Vorgabe, kann diese Option zur Anzeige des gesamten Puffers verwendet werden.

-T, --ctime

   gibt menschenlesbare Zeitstempel aus.
   Der Zeitstempel könnte allerdings ungenau sein! Die für die Protokollierung verwendete Zeit wird nach SUSPEND- und RESUME-Vorgängen nicht erneut
   abgeglichen. Zeitstempel werden anhand der aktuellen Differenz zwischen Startzeit- und monotonen Uhren abgeglichen; das funktioniert nur für
   Meldungen, die nach dem letzten Aufwachen ausgegeben wurden.

--since Zeit

   zeigt die Aufzeichnungen seit der angegebenen Zeit an. Sie können die Zeit sowohl absolut als auch in relativer Notation angeben (zum Beispiel »1
   hour ago«). Rechnen Sie damit, dass der Zeitstempel ungenau sein könnte; siehe --ctime für weitere Details.

--until Zeit

   zeigt die Aufzeichnungen bis zur angegebenen Zeit an. Sie können die Zeit sowohl absolut als auch in relativer Notation angeben (zum Beispiel »1
   hour ago«). Rechnen Sie damit, dass der Zeitstempel ungenau sein könnte; siehe --ctime für weitere Details.

-t, --notime

   verhindert die Ausgabe von Zeitstempeln des Kernels.

--time-format Format

   gibt Zeitstempel im angegebenen Format aus, welches ctime, reltime, delta oder iso sein kann. Die ersten drei Formate sind Aliase der
   Zeitformat-spezifischen Optionen. Das iso-Format ist eine dmesg-Implementierung des Zeitstempelformats ISO-8601. Dieses Format dient dazu, den
   Vergleich der Zeitstempel zweier Systeme und deren weitere Verarbeitung zu erleichtern. Die Definition des iso-Zeitstempels lautet:
   YYYY-MM-DD<T>HH:MM:SS,<Mikrosekunden><-+><Zeitzonenversatz zur Weltzeit>.
   Das iso-Format hat das gleiche Problem wie ctime: Die Zeit kann ungenau sein, wenn ein System in einen Energiesparmodus versetzt und wieder
   aufgeweckt wird.

-u, --userspace

   gibt Meldungen der Anwendungsebene aus.

-w, --follow

   wartet auf neue Meldungen. Dieses Funktionsmerkmal wird nur auf Systemen unterstützt, auf denen /dev/kmsg lesbar ist (seit Kernel 3.5.0).

-W, --follow-new

   wartet und gibt nur neue Meldungen aus.

-x, --decode

   dekodiert die Einrichtungs- und Stufennummer (Priorität) in menschenlesbare Präfixe.

-h, --help

   zeigt einen Hilfetext an und beendet das Programm.

-V, --version

   zeigt die Versionsnummer an und beendet das Programm.

FARBEN Die farbige Darstellung der Ausgabe wird über die Funktionen in terminal-colors.d(5) gesteuert. Die implizierte Einfärbung kann deaktiviert werden, indem Sie folgende (leere) Datei anlegen:

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

Dies gilt für den Befehl dmesg. Die farbige Darstellung bei allen Werkzeugen erreichen Sie mit

   /etc/terminal-colors.d/disable

Die benutzerspezifischen $XDG_CONFIG_HOME/terminal-colors.d oder $HOME/.config/terminal-colors.d setzen die globale Einstellung außer Kraft.

Beachten Sie, dass die Einfärbung der Ausgabe standardmäßig aktiviert sein könnte und in diesem Fall die terminal-colors.d-Verzeichnisse noch nicht zwangsläufig vorhanden sein müssen.

Folgende logische Farbnamen werden von dmesg unterstützt:

subsys

   Das Subsystem-Präfix der Meldung (z.B. »ACPI:«).

time

   Der Zeitstempel der Meldung.

timebreak

   zeigt den Zeitstempel der Meldung im gekürzten ctime-Format in der Ausgabe mit --reltime oder --human.

alert

   zeigt den Text der Meldung mit der Protokollpriorität »alert« an.

crit

   zeigt den Text der Meldung mit der Protokollpriorität »critical« an.

err

   zeigt den Text der Meldung mit der Protokollpriorität »error« an.

warn

   zeigt den Text der Meldung mit der Protokollpriorität »warning« an.

segfault

   Der Text der Meldung, die über Speicherzugriffsfehler informiert.

EXIT-STATUS dmesg kann fehlschlagen und einen Zugriffsrechteverweigerungsfehler melden. Dies wird normalerweise durch die Kerneleinstellung dmesg_restrict hervorgerufen, siehe bitte syslog(2) für weitere Details.

SIEHE AUCH

  1. terminal-colors.d(5)
  2. syslogd(8)

VERFÜGBARKEIT Der Befehl dmesg ist Teil des Pakets util-linux, welches heruntergeladen werden kann von: Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.