Zum Inhalt springen

LPIC102/108.2 Systemprotokollierung: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
 
(122 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
Viele Programme und Linux selbst protokollieren zur Laufzeit Ereignisse, damit ein Administrator in diesen Protokolle nach Fehlern zu diagnostizieren. Dazu ist es wichtig, die Orte, wo die Protokolle gespeichert sind, zu kennen und die dafür vorgesehenen Konfigurationsdateien.
'''LPIC102/108.2 Systemprotokollierung'''


==Programme zur Protokollierung==
== Beschreibung ==
*Je nach Distribution gibt es verschiedene Programme/Dienste zur Protokollierung von Ereignissen
Wichtige Programme
*''syslogd'' war der erste Logging-Daemon von Linux
* rsyslog
*''syslog-ng'' war die Weiterentwicklung von ''syslogd''
* journald
*''rsyslog'' ist zum Standard einiger wesentlicher Distributionen entwickelt
*''journald'' ist Bestandteil von ''systemd.journald''


==rsyslog==
Die Konfig-Dateien von ''rsyslog'' sind in der ''/etc/rsyslog.conf''
*Zur Konfiguration von ''rsyslog'' sind die Dateien ''/etc/rsyslog.conf'' und ''/etc/rsyslog.d''
* Enthält Regeln für das Logging
*Besteht aus drei Komponenten: ''facility'' ''level'' ''action''
*''facility'' legt dabei die Einrichtung fest, ''level'' den Protokollierungsgrad und ''action'' wohin das ''facility'' protokollieren soll


Hier ein Auszug aus ''rsyslog.conf''.
Im Verzeichnis ''/var/log'' stehen die ganzen Log-Dateien
* Mit ''less'' oder ''tail -f'' anzeigen
* ''logrotate'' verschiebt (rotiert) und komprimiert Logdateien
**Die Konfig-Datei für ''logrotate'' ist die ''/etc/logrotate.conf''
** Logdateien von anderen Dateien sind in der ''/etc/logrotate.d''
* ''journald'' ist Teil des ''systemd'' und kann mit ''journalctl'' aufgerufen werden
** Die Konfig-Datei für ''journald'' ist in der ''/etc/systemd/journald.conf''
** Mit ''logger'' kann man Ereignisse in ''syslog'' oder in ''journald'' schreiben


# First some standard log files.  Log by facility.
; Protokollierung von Ereignissen zur Fehlerbehebung
#
* Linux-Kernel
auth,authpriv.*                /var/log/auth.log
* Dienste
*.*;auth,authpriv.none          -/var/log/syslog
* Programme
#cron.*                        /var/log/cron.log
daemon.*                       -/var/log/daemon.log
kern.*                         -/var/log/kern.log
lpr.*                          -/var/log/lpr.log
mail.*                          -/var/log/mail.log
user.*                         -/var/log/user.log


==Untersuchen von Logdateien==
; Wissensgebiete
Wenn Fehler auftreten, ist das Verzeichnis ''/var/log/'' die erste Anlaufstelle. Mit dem Pager ''less'' können sie eine Logdatei untersuchen bspw.:
{| class="wikitable options big"
|-
| Orte || Verzeichnisse, in denen Protokolle gespeichert werden
|-
| Programme || Protokolle auswerten
|-
| Konfigurationsdateien || Protokollierung steuern
|}


# less /var/log/syslog
; Programme und Dienste zur Protokollierung von Ereignissen
{| class="wikitable options big"
|-
| [[syslogd]] || Ursprünglicher [[Linux]]-[[Logging]]-[[Daemon]]
|-
| [[syslog-ng]] || Weiterentwicklung von [[syslogd]]
|-
| [[rsyslog]] || Standard wesentlicher Distributionen
|-
| [[journald]] || Bestandteil von ''[[systemd]]''
|}


Mit sehr großen Logdateien ist eher ''tail'' die richtige Wahl, da es die letzten zehn Zeilen einer Datei anzeigt. Mit der Option ''-f'' wird die Datei samt Änderungen im laufenden Betrieb angezeigt.
== Logdateien untersuchen ==
[[Logdateien untersuchen]]


# tail -f /var/log/syslog
==logrotate==
[[Logrotate]]


Wenn sie in einer Logdatei nach einem bestimmten Ereignistyp filtern wollen, empfiehlt sich ''grep'' dafür.
== systemd-journald ==
[[Systemd/Journald]]


# grep sshd /var/log/syslog | grep invalid | less
== Selbst Ereignisse loggen ==
[[Logger]]


In diesem Beispiel werden die Einträge gesucht, die der ''sshd'' eingetragen hat. Anschließend filtert er, die ein ''invalid'' haben und am Ende übergibt er sie weiter an ''less''.
[[Kategorie:Linux/LPIC/102]]
 
[[Kategorie:Linux/Logging]]
==logrotate==
[[Kategorie:Journald]]
*''logrotate'' rotiert und komprimiert Logdateien, damit diese nicht unkontrolliert anwachsen.
*Die Konfig-Dateien sind: /etc/logrotate.conf und /etc/logrotate.d

Aktuelle Version vom 5. März 2026, 14:48 Uhr

LPIC102/108.2 Systemprotokollierung

Beschreibung

Wichtige Programme

  • rsyslog
  • journald

Die Konfig-Dateien von rsyslog sind in der /etc/rsyslog.conf

  • Enthält Regeln für das Logging

Im Verzeichnis /var/log stehen die ganzen Log-Dateien

  • Mit less oder tail -f anzeigen
  • logrotate verschiebt (rotiert) und komprimiert Logdateien
    • Die Konfig-Datei für logrotate ist die /etc/logrotate.conf
    • Logdateien von anderen Dateien sind in der /etc/logrotate.d
  • journald ist Teil des systemd und kann mit journalctl aufgerufen werden
    • Die Konfig-Datei für journald ist in der /etc/systemd/journald.conf
    • Mit logger kann man Ereignisse in syslog oder in journald schreiben
Protokollierung von Ereignissen zur Fehlerbehebung
  • Linux-Kernel
  • Dienste
  • Programme
Wissensgebiete
Orte Verzeichnisse, in denen Protokolle gespeichert werden
Programme Protokolle auswerten
Konfigurationsdateien Protokollierung steuern
Programme und Dienste zur Protokollierung von Ereignissen
syslogd Ursprünglicher Linux-Logging-Daemon
syslog-ng Weiterentwicklung von syslogd
rsyslog Standard wesentlicher Distributionen
journald Bestandteil von systemd

Logdateien untersuchen

Logdateien untersuchen

logrotate

Logrotate

systemd-journald

Systemd/Journald

Selbst Ereignisse loggen

Logger