Wichtige /var/log/ Logdateien

24.04.2021

Wenn Sie viel Zeit in einer Linux-Umgebung verbringen, ist es wichtig zu wissen, wo sich die Logdateien befinden und was in jeder Protokolldatei enthalten ist.

Wenn Ihre Systeme reibungslos funktionieren, nehmen Sie sich etwas Zeit, um den Inhalt verschiedener Logdateien zu erlernen und zu verstehen. Dies hilft Ihnen bei Krisen und Sie müssen die Logdateien durchsehen, um das Problem zu identifizieren. /etc/rsyslog.conf steuert, was in einigen Logdateien enthalten ist. Im Folgenden finden Sie beispielsweise den Eintrag in der Datei rsyslog.conf für /var/log/messages.

 

grep "/var/log/messages"/etc/rsyslog.conf
	*.info;mail.none;authpriv.none;cron.none                /var/log/messages

 

In der obigen Ausgabe

  • * .info gibt an, dass alle Protokolle vom Typ INFO protokolliert werden.
  • mail.none, authpriv.none, cron.none gibt an, dass diese Fehlermeldungen nicht in der Datei /var/log/messages protokolliert werden sollten.
  • Sie können auch * .none angeben, was darauf hinweist, dass keine der Protokollnachrichten protokolliert wird.

Im Folgenden sind die 20 verschiedenen Logdateien aufgeführt, die sich im Verzeichnis/var/log/ befinden. Einige dieser Logdateien sind verteilungsspezifisch. Beispielsweise wird dpkg.log auf Debian-basierten Systemen (z. B. unter Ubuntu) angezeigt.

  1. /var/log/messages - Enthält globale Systemnachrichten, einschließlich der Nachrichten, die beim Systemstart protokolliert werden. Es gibt verschiedene Dinge, die in /var/log/messages angemeldet sind, einschließlich Mail, Cron, Daemon, Kern, Auth usw.
  2. /var/log/dmesg - Enthält Informationen zum Kernel-Ringpuffer. Beim Systemstart wird eine Anzahl von Meldungen auf dem Bildschirm gedruckt, auf denen Informationen zu den Hardwaregeräten angezeigt werden, die der Kernel während des Startvorgangs erkennt. Diese Nachrichten sind im Kernel-Ringpuffer verfügbar, und wenn die neue Nachricht eingeht, wird die alte Nachricht überschrieben. Sie können den Inhalt dieser Datei auch mit dem Commando dmesg anzeigen.
  3. /var/log/auth.log - Enthält Informationen zur Systemautorisierung, einschließlich der verwendeten Benutzeranmeldungen und Authentifizierungsmaschinen.
  4. /var/log/boot.log - Enthält Informationen, die beim Systemstart protokolliert werden
  5. /var/log/daemon.log - Enthält Informationen, die von den verschiedenen Hintergrunddämonen protokolliert werden, die auf dem System ausgeführt werden
  6. /var/log/dpkg.log - Enthält Informationen, die protokolliert werden, wenn ein Paket mit dem Befehl dpkg installiert oder entfernt wird
  7. /var/log/kern.log - Enthält vom Kernel protokollierte Informationen. Hilfreich bei der Fehlerbehebung bei einem benutzerdefinierten Kernel.
  8. /var/log/lastlog - Zeigt die letzten Anmeldeinformationen für alle Benutzer an. Dies ist keine ASCII-Datei. Sie sollten den Befehl lastlog verwenden, um den Inhalt dieser Datei anzuzeigen.
  9. /var/log/maillog/var/log/mail.log - Enthält die Protokollinformationen vom Mailserver, der auf dem System ausgeführt wird. Sendmail protokolliert beispielsweise Informationen zu allen gesendeten Elementen in dieser Datei
  10. /var/log/user.log - Enthält Informationen zu allen Protokollen auf Benutzerebene
  11. /var/log/Xorg.x.log - Protokolliert Nachrichten vom X.
  12. /var/log/alternatives.log - Informationen der Update-Alternativen werden in dieser Protokolldatei protokolliert. Unter Ubuntu behalten Update-Alternativen symbolische Links bei, die Standardbefehle bestimmen.
  13. /var/log/btmp - Diese Datei enthält Informationen zu fehlgeschlagenen Anmeldversuchen. Verwenden Sie den letzten Befehl, um die BTMP-Datei anzuzeigen. Zum Beispiel “tail -f /var/log/btmp | more”
  14. /var/log/cups - Alle drucker- und druckbezogenen Protokollmeldungen
  15. /var/log/anaconda.log - Wenn Sie Linux installieren, werden alle installationsbezogenen Meldungen in dieser Protokolldatei gespeichert
  16. /var/log/yum.log - Enthält Informationen, die protokolliert werden, wenn ein Paket mit yum installiert wird
  17. /var/log/cron - Immer wenn der Cron-Daemon (oder Anacron ) einen Cron-Job startet, werden die Informationen zum Cron-Job in dieser Datei protokolliert
  18. /var/log/secure - Enthält Informationen zu Authentifizierungs- und Autorisierungsberechtigungen. Beispielsweise protokolliert sshd alle Nachrichten hier, einschließlich der nicht erfolgreichen Anmeldung.
  19. /var/log/wtmp oder /var/log/utmp - Enthält Anmeldedatensätze. Mit wtmp können Sie herausfinden, wer am System angemeldet ist. Der Befehl who verwendet diese Datei, um die Informationen anzuzeigen.
  20. /var/log/faillog - Enthält vom Benutzer fehlgeschlagene Anmeldversuche. Verwenden Sie den Befehl faillog, um den Inhalt dieser Datei anzuzeigen.

Abgesehen von den oben genannten Logdateien kann das Verzeichnis /var/log abhängig von der Anwendung, die auf Ihrem System ausgeführt wird, auch die folgenden Unterverzeichnisse enthalten.

  • /var/log/httpd/ (oder) /var/log/apache2 - Enthält das Zugriffslog und das Fehlerprotokoll des Apache-Webservers
  • /var/log/lighttpd/ - Enthält leichtes HTTPD-Zugriffsprotokoll und Fehlerprotokoll
  • /var/log/conman/ - Logdateien für den ConMan-Client. conman verbindet Remote-Konsolen, die vom conmand-Daemon verwaltet werden.
  • /var/log/mail/ - Dieses Unterverzeichnis enthält zusätzliche Protokolle von Ihrem Mailserver. Beispielsweise speichert sendmail die gesammelten E-Mail-Statistiken in der Datei/var/log/mail/statistics
  • Das Programm /var/log/Prelink/ - Prelink ändert modifizierte Bibliotheken und verknüpfte Binärdateien, um den Startvorgang zu beschleunigen. /var/log/prelink/prelink.log enthält die Informationen zur .so-Datei, die vom Prelink geändert wurde.
  • /var/log/audit/ - Enthält Protokollinformationen, die vom Linux-Audit-Daemon (auditd) gespeichert wurden.
  • /var/log/setroubleshoot/ - SELinux verwendet setroubleshootd (SE Trouble Shoot Daemon), um über Probleme im Sicherheitskontext von Dateien zu benachrichtigen, und protokolliert diese Informationen in dieser Protokolldatei.
  • /var/log/samba/ - Enthält von samba gespeicherte Protokollinformationen, mit denen Windows mit Linux verbunden wird.
  • /var/log/sa/ - Enthält die täglichen Sar-Dateien, die vom sysstat-Paket erfasst werden .
  • /var/log/sssd/ - Wird vom Dämon für Systemsicherheitsdienste verwendet, der den Zugriff auf Remoteverzeichnisse und Authentifizierungsmechanismen verwaltet.

Anstatt manuell zu versuchen, die Logdateien zu archivieren, sie nach x Tagen zu bereinigen oder die Protokolle nach Erreichen einer bestimmten Größe zu löschen, können Sie dies automatisch mit logrotate tun, wie bereits erläutert.

Verwenden Sie eine der folgenden Methoden, um die Logdateien anzuzeigen.  Aber bitte nicht ‘cat | most’.

  • vi - Wenn Sie mit den vi-Befehlen vertraut sind , verwenden Sie den vi-Editor zum schnellen Durchsuchen von Logdateien.
  • tail - Wenn Sie den Inhalt der Logdateien in Echtzeit anzeigen möchten, während die Anwendung darauf schreibt, verwenden Sie “tail -f”. Sie können auch mehrere Logdateien gleichzeitig anzeigen (mit „tail -f“).
  • grep - Wenn Sie genau wissen, wonach Sie in einer Protokolldatei suchen, können Sie mit dem Befehl grep schnell ein Muster erfassen. Die 15 praktischen Grep-Beispiele werden alle Ihre Ausreden herausnehmen, Grep nicht zu verwenden.
  • less - Der Befehl Less ist sehr leistungsfähig, um Logdateien zu durchsuchen. Verwenden Sie diese 10 Tipps für weniger Befehle , um den Befehl weniger zu beherrschen.