GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux-dmesg-Befehls-Tutorial für Anfänger (5 Beispiele)

Wissen Sie, dass der Linux-Kernel beim Booten des Systems mehrere Gerätetreiber lädt? Wenn Ihr System betriebsbereit ist und Sie ein Hardwaregerät anschließen, wird auch ein entsprechender Gerätetreiber geladen. Natürlich erledigt der Kernel auch viele andere Dinge. Was ist, wenn Sie Informationen zu diesen Kernel-Aktivitäten wissen möchten?

Nun, es gibt einen Befehl namens dmesg, den Sie verwenden können, wenn Sie auf Nachrichten zugreifen möchten, die vom Kernel ausgegeben werden. In diesem Tutorial werden wir anhand einiger leicht verständlicher Beispiele verstehen, wie das dmesg-Tool funktioniert.

Linux-dmesg-Befehl

Mit dem Befehl dmesg können Sie den Ringpuffer des Kernels drucken oder steuern. Es folgt die Syntax:

dmesg [options]

Und so erklärt es die Manpage des Tools:

dmesg is used to examine or control the kernel ring buffer. The default action is to display all 
messages from the kernel ring buffer.

Im Folgenden finden Sie einige Beispiele im Q&A-Stil, die Ihnen eine bessere Vorstellung davon vermitteln sollen, wie der Befehl dmesg funktioniert.

Q1. Wie verwende ich den dmesg-Befehl?

Sie können beginnen, den dmesg-Befehl ohne jede Befehlszeilenoption zu verwenden.

dmesg

Hier ist zum Beispiel ein kleiner Teil der Ausgabe, die der Befehl in meinem Fall erzeugt hat:

Q2. Wie kann die Ausgabe nur auf Fehler und Warnungen beschränkt werden?

Wenn Sie dmesg auf Ihrem System ausführen, werden Sie feststellen, dass es eine Fülle von Informationen ausgibt. Je nachdem, wonach Sie suchen, möchten Sie möglicherweise die Ausgabe filtern oder einschränken. dmesg seinerseits bietet Ihnen diese Fähigkeit durch 'Ebenen' an. Es folgt die vollständige Liste der Ebenen (zusammen mit ihrer Erklärung):

   emerg - system is unusable
   alert - action must be taken immediately
    crit - critical conditions
     err - error conditions
    warn - warning conditions
  notice - normal but significant condition
    info - informational
   debug - debug-level messages

Wenn Sie beispielsweise die Ausgabe nur auf Fehler und Warnungen beschränken möchten, können Sie dies folgendermaßen tun:

dmesg --level=err,warn

In meinem Fall ist hier ein Teil der Ausgabe des obigen Befehls:

Q3. Wie bringt man dmesg dazu, Zeitstempel in der Ausgabe zu erzeugen?

Manchmal möchten Sie vielleicht, dass den Nachrichten, die dmesg erzeugt, ein Zeitstempel zugeordnet wird. Dies kann mit der Befehlszeilenoption -T erfolgen, die für Menschen lesbare Zeitstempel erzeugt.

dmesg -T

Es folgt eine Beispielausgabe:

Damit Sie sehen können, dass jeder Nachricht ein Zeitstempel vorangestellt ist.

Q4. Wie kann man dmesg dazu bringen, Informationen speziell für ein Gerät anzuzeigen?

Angenommen, Sie möchten, dass dmesg nur Informationen zur eth0-Schnittstelle anzeigt. So können Sie das tun:

dmesg | grep -i eth0

Es folgt eine Beispielausgabe:

F5. Wie kann man dmesg dazu bringen, nur Userspace-Nachrichten anzuzeigen?

Wenn Sie die Ausgabe von dmesg nur auf Userspace-Meldungen beschränken möchten, verwenden Sie die Befehlszeilenoption -u.

dmesg -u

Schlussfolgerung

Zugegeben, dmesg ist nicht die Art von Befehl, den Sie jeden Tag brauchen werden. Aber dies ist das Tool, an das Sie sich wenden sollten, wenn jemand (den Sie um Hilfe zu einem bestimmten Thema gebeten haben) Sie auffordert, Kernel-Nachrichten bereitzustellen. Ich habe diesen Fall meistens in Online-Benutzerforen gesehen, wo erfahrene Benutzer nach Kernel-Ausgabe fragen.

Hier, in diesem Tutorial, haben wir den Befehl dmesg aus Anfängersicht besprochen (nur um Ihnen den Einstieg zu erleichtern). Wenn Sie alles, was wir hier besprochen haben, geübt haben, gehen Sie zur Manpage des Tools.


Linux
  1. Linux-CD-Befehls-Tutorial für Anfänger (8 Beispiele)

  2. Linux-Kommando-Tutorial für Anfänger (5 Beispiele)

  3. Linux-df-Befehls-Tutorial für Anfänger (8 Beispiele)

  4. Linux Date Command Tutorial für Anfänger (8 Beispiele)

  5. Linux-Hostname-Befehls-Tutorial für Anfänger (5 Beispiele)

Linux Who Command Tutorial für Anfänger (8 Beispiele)

Linux nl Command Tutorial für Anfänger (7 Beispiele)

Linux-nm-Befehls-Tutorial für Anfänger (10 Beispiele)

Linux OD Command Tutorial für Anfänger (6 Beispiele)

Linux w Command Tutorial für Anfänger (5 Beispiele)

Linux ss Command Tutorial für Anfänger (8 Beispiele)