# Protokollieren von Systemmeldungen

Programmen ist es möglich, über spezielle Systemrufe dem Protokollanten von Linux `syslogd` Nachrichten zu senden, die dieser je nach Konfiguration entweder in Dateien speichert, an syslog-Dämonen anderen Rechner weiterleitet oder direkt auf die Konsole ausgibt. Vor allem bei der Fehlersuche oder bei der Aufdeckung vermuteter Sicherheitslücken können die protokollierten Daten nützlich sein. Nachrichten werden unterschieden nach ihrer Art:

Herkunft | Erläuterung
auth | Authentifizierung (z.B. login)
authpriv | Vertrauliche Nachrichten der "inneren" Sicherheitsdienste
cron | Meldungen des `cron`-Dämonen
daemon | Meldungen von anderen Dämonen
kern | Kernelmitteilungen
lpr | Meldungen des Druckerdämonen
mail | Meldungen vom Mailsystem
news | Meldungen des Nachrichtensystems
security | Wie auth
syslog | Meldungen vom `syslogd` selbst
user | Meldungen von Anwenderprogrammen
local0-local7 | Zur freien Verfügung

und ihrer Dringlichkeit (Priorität, aufsteigend geordnet):

Priorität | Bedeutung
none | Nachrichten dieser "Pseudopriorität" nicht beachten
debug | Debugmeldungen, innere Programmzustände
info | Informationen über das alltägliche Geschehen...
notice | Etwas Auffälliges im Normalbetrieb...
warn | Alle möglichen Warnungen...
warning | Wie warn
err | Fehlermeldungen aller Art
error | Wie err
crit | Kritische Fehlermeldungen, gerade noch gutgegangen...
alert | Dringend, sofortiger Eingriff notwendig
emerg | Unmittelbar vor einem Systemcrash
panic | Wie emerg

Der ganze Vorgang des Protokollierens kann durch die Datei `/etc/syslog.conf` gesteuert werden. Ein Eintrag umfasst eine Zeile:

`Herkunft.Prioritaet[;Herkunft.Prioritaet] ´Wohin damit´`

Eine Beispieldatei soll die verschiedenen Möglichkeiten demonstrieren:

    # /etc/syslog.conf - Konfigurationsdatei fuer syslogd(8)

    #

    # Weitere Informationen erhalt man mit "man syslog.conf".

    #

    # Meldungen vom Kernel der Prioritäten warn und höher, alle  Fehlermeldungen  und
    # Meldungen höherer Priorität jeglicher Herkunft (*) nach /dev/console. Meldungen
    # der inneren Sicherheitdienste nicht anzeigen:

    kern.warn;*.err;authpriv.none                     /dev/console

    # Kurz vor einem Systemcrash diesen allen angemeldeten Nutzern (*) sofort anzeigen
    # und an anderen Rechner weiterleiten (um später die Ursache finden zu können):

    *.emerg                                                      *
    *.emerg                                       @atair.galaxis.de

    #
    # alle Nachrichten des email-Systems in eine Datei
    #

    mail.*                                           /var/log/mail

    #
    # all news-System-Nachrichten in eine Datei
    #

    news.*                                           /var/log/news

    #
    # alle Warnungen in eine Datei
    #

    *.warn                                           /var/log/warn

    #
    # Alles (außer mail und news) in eine gemeinsame Datei
    #

    *.*;mail.none;news.none                      /var/log/messages

    # über fehlgeschlagene Loginversuche wird der Administrator, sofern angemeldet, informiert

    auth.*                                                    root