Erfahren Sie in diesem Artikel aus unseren Archiven, wie Sie Linux-Protokolle einfach überprüfen können.
Irgendwann in Ihrer Karriere als Linux-Administrator müssen Sie Protokolldateien anzeigen. Schließlich sind sie für einen sehr wichtigen da reason…to helfen Sie bei der Behebung eines Problems. Tatsächlich teilt Ihnen jeder erfahrene Administrator sofort mit, dass das erste, was bei Auftreten eines Problems zu tun ist, das Anzeigen der Protokolle ist.,
Und es gibt viele Protokolle zu finden: Protokolle für das System, Protokolle für den Kernel, für Paketmanager, für Xorg, für den Bootprozess, für Apache, für MySQL… Für fast alles, was Sie sich vorstellen können, gibt es eine Protokolldatei.
Die meisten Protokolldateien können an einem geeigneten Ort gefunden werden: / var / log. Dies sind alles System-und Dienstprotokolle, auf die Sie sich stark stützen werden, wenn ein Problem mit Ihrem Betriebssystem oder einem der Hauptdienste vorliegt. Bei Desktop-App-spezifischen Problemen werden Protokolldateien an verschiedene Speicherorte geschrieben (z. B. schreibt Thunderbird Absturzberichte in ‘~/.,thunderbird / Absturzberichte‘). Wo eine Desktop-Anwendung Protokolle schreibt, hängt vom Entwickler ab und davon, ob die App eine benutzerdefinierte Protokollkonfiguration zulässt.
Wir werden uns auf Systemprotokolle konzentrieren, da hier das Herzstück der Linux-Fehlerbehebung liegt. Und das Hauptproblem hier ist, wie sehen Sie diese Protokolldateien?
Glücklicherweise gibt es zahlreiche Möglichkeiten, wie Sie Ihre Systemprotokolle anzeigen können, die alle ganz einfach über die Befehlszeile ausgeführt werden.
/ var / log
Dies ist ein so wichtiger Ordner auf Ihren Linux-Systemen. Öffnen Sie ein Terminalfenster und geben Sie den Befehl cd / var / log aus., Geben Sie nun den Befehl ls aus und Sie sehen die Protokolle in diesem Verzeichnis (Abbildung 1).
Werfen wir nun einen Blick in eines dieser Protokolle.
Protokolle mit weniger anzeigen
Eines der wichtigsten Protokolle in /var/log ist syslog. Diese spezielle Protokolldatei protokolliert alles außer Auth-bezogenen Nachrichten. Angenommen, Sie möchten den Inhalt dieser bestimmten Protokolldatei anzeigen., Dazu können Sie schnell den Befehl less /var/log/syslog ausgeben. Dieser Befehl öffnet die Syslog-Protokolldatei nach oben. Sie können dann mit den Pfeiltasten jeweils eine Zeile nach unten scrollen, mit der Leertaste jeweils eine Seite nach unten scrollen oder mit dem Mausrad einfach durch die Datei scrollen.
Das einzige Problem mit dieser Methode ist, dass Syslog ziemlich groß werden kann; und wenn man bedenkt, wonach man sucht, wird es höchstwahrscheinlich am unteren Ende sein, und man möchte vielleicht nicht die Zeit damit verbringen, Zeile oder Seite gleichzeitig zu scrollen, um dieses Ende zu erreichen., Wird die syslog öffnen, in der weniger Befehl, Sie könnte auch Treffer die + Kombination, um sofort zu gehen, um das Ende der log-Datei. Das Ende wird mit (ENDE) bezeichnet. Sie können dann mit den Pfeiltasten oder dem Scrollrad nach oben scrollen, um genau das zu finden, was Sie wollen.
Das ist natürlich nicht besonders effizient.
Anzeigen von Protokollen mit dmesg
Der Befehl dmesg druckt den Kernel-Ringpuffer. Standardmäßig zeigt der Befehl alle Nachrichten aus dem Kernel-Ringpuffer an. Geben Sie im Terminalfenster den Befehl dmesg aus und der gesamte Kernel-Ringpuffer wird ausgedruckt (Abbildung 2).,
Glücklicherweise gibt es einen integrierten Steuermechanismus, mit dem Sie nur bestimmte Funktionen (z. B. Daemon) ausdrucken können.
Angenommen, Sie möchten Protokolleinträge für die Benutzereinrichtung anzeigen. Geben Sie dazu den Befehl dmesg –facility=user aus. Wenn etwas in dieser Einrichtung angemeldet wurde, wird es ausgedruckt.,
Im Gegensatz zum Befehl less zeigt dmesg den vollständigen Inhalt des Protokolls an und sendet Sie an das Ende der Datei. Sie können jederzeit mit Ihrem Scrollrad den Puffer Ihres Terminalfensters durchsuchen (falls zutreffend). Stattdessen möchten Sie die Ausgabe von dmesg wie folgt an den Befehl less weiterleiten:
dmesg | less
Der obige Befehl druckt den Inhalt von dmesg aus und ermöglicht es Ihnen, durch die Ausgabe zu scrollen, genau wie Sie ein Standardprotokoll mit dem Befehl less.,
Protokolle anzeigen mit tail
Der Befehl tail ist wahrscheinlich eines der handlichsten Tools, die Sie zum Anzeigen von Protokolldateien zur Verfügung haben. Was Tail tut, gibt den letzten Teil der Dateien aus. Wenn Sie also den Befehl tail /var/log/syslog ausgeben, werden nur die letzten Zeilen der Syslog-Datei ausgedruckt.
Die Verwendung von tail auf diese Weise ist für die Fehlerbehebung von unschätzbarem Wert.
Um dem Befehl tail zu entkommen (wenn Sie einer Datei folgen), drücken Sie die Kombination+.
Sie können tail auch anweisen, nur einer bestimmten Anzahl von Zeilen zu folgen., Angenommen, Sie möchten nur die letzten fünf Zeilen anzeigen, die in syslog geschrieben wurden. Dafür könnten Sie den Befehl ausgeben:
tail -f -n 5 /var/log/syslog
Der obige Befehl würde der Eingabe in syslog folgen und nur die letzten fünf Zeilen ausdrucken. Sobald eine neue Zeile in Syslog geschrieben wird, wird die älteste von oben entfernt. Dies ist eine großartige Möglichkeit, um das Folgen einer Protokolldatei noch einfacher zu machen. Ich empfehle dringend, dies nicht zu verwenden, um weniger als vier oder fünf Zeilen anzuzeigen, da Sie die Eingabe abschneiden und nicht die vollständigen Details des Eintrags erhalten.,
gibt Es andere Werkzeuge
Sie finden viele andere Befehle (und auch ein paar anständige GUI-tools), und aktivieren Sie die Anzeige von log-Dateien. Schauen Sie auf mehr, grep, Head, cat, Multitail und System Log Viewer, um Sie bei Ihrer Suche nach Fehlersuche Systeme über Log-Dateien zu unterstützen.
Fördern Sie Ihre Karriere mit Linux-Systemadministration Fähigkeiten. Schauen Sie sich die Grundlagen der Systemadministration Kurs von der Linux Foundation.