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

Linux-Betriebssystemdienst „syslog“

Syslog ist der allgemeine Standard zum Protokollieren von System- und Programmmeldungen in der Linux-Umgebung. Dieser Dienst stellt den Systemprotokoll-Daemon dar, in dem jedes Programm seine Protokollierung (Debug, Sicherheit, Normalbetrieb) zusätzlich über die Linux-Kernel-Meldungen durchführen kann.

Im Prinzip sind die von Syslog verwalteten Protokolle im Verzeichnis /var/log/ auf Linux-Systemen verfügbar:

# ls /var/log
boot.log                 cloud-init-output.log                   firewalld           maillog            rhsm              tallylog
anaconda                 btmp             cron                   gdm                 maillog-20151219   samba             tuned
audit                    btmp-20151219    cron-20151219          grubby              messages           secure            wpa_supplicant.log
auth.log                 choose_repo.log  dmesg                  grubby_prune_debug  messages-20151219  secure-20151219   wtmp
yum.log                  chrony           dmesg.old              lastlog             pm-powersave.log   spooler           xrdp.log

wo einige der Protokolle in einem Unterverzeichnis wie cups, samba, httpd abgelegt werden. Unter den Protokollen unter /var/log die /var/log/messages ist die häufigste, da die Kernel-/Core-Systemprotokolle dort gespeichert werden. Die Kernel-Module werden im Allgemeinen auch dort abgelegt. Für die Problemdiagnose / Überwachung ist /var/log/messages also die primäre Protokolldatei, die untersucht werden muss.

Die Protokolle werden jede Woche rotiert (Umbenennung des vorhandenen Protokolls in Dateiname.Nummernreihenfolge):

# ls -l /var/log/messages*
-rw------- 1 root root   1973 Jun 10 15:07 /var/log/messages
-rw------- 1 root root  10866 Jun  6 04:02 /var/log/messages.1
-rw------- 1 root root  19931 May 30 04:02 /var/log/messages.2
-rw------- 1 root root 238772 May 23 04:02 /var/log/messages.3
-rw------- 1 root root 171450 May 14 18:29 /var/log/messages.4

die wöchentlich rotierte Protokolldatei wird nach Ablauf von 4 Wochen gelöscht (Gesamtprotokolle erstrecken sich über einen Zeitraum von 5 Wochen). Dieser Rotationsmechanismus wird von crond und logrotate bereitgestellt.

Es gibt auch rsyslogd, das vom rsyslog-Paket bereitgestellt wird, das eine zuverlässigere und erweiterte Version von syslogd ist. Für weitere Informationen installieren Sie das rsyslog-Paket und lesen Sie die Manpage von rsyslogd.

Dienststeuerung

Um den Syslog-Dienst zu starten, verwenden Sie einen der folgenden Befehle:

# service syslog start
# /etc/init.d/syslog start

Verwenden Sie einen der folgenden Befehle, um den Syslog-Dienst zu stoppen:

# service syslog stop
# /etc/init.d/syslog stop

Führen Sie Folgendes aus, um Runlevel und Dienstverfügbarkeit anzuzeigen:

# chkconfig --list syslog
syslog          0:off   1:off   2:on    3:on    4:on    5:on    6:off

Wenn der Dienst deaktiviert ist, können Sie ihn wie folgt aktivieren:

# chkconfig --list syslog
syslog          0:off   1:off   2:off   3:off   4:off   5:off   6:off
# chkconfig syslog on
# chkconfig --list syslog
syslog          0:off   1:off   2:on    3:on    4:on    5:on    6:off

Konfiguration

Die Konfigurationsdatei für den syslogd-Dienst ist /etc/sysconfig/syslog . Die Standarddatei sieht wie folgt aus:

# Options to syslogd
# -m 0 disables 'MARK' messages.
# -r enables logging from remote machines
# -x disables DNS lookups on messages recieved with -r
# See syslogd(8) for more details
SYSLOGD_OPTIONS="-m 0"
# Options to klogd
# -2 prints all kernel oops messages twice; once for klogd to decode, and
#    once for processing with 'ksymoops'
# -x disables all klogd processing of oops messages entirely
# See klogd(8) for more details
KLOGD_OPTIONS="-x"
#
SYSLOG_UMASK=077
# set this to a umask value to use for all log files as in umask(1).
# By default, all permissions are removed for "group" and "other".

Dort sehen Sie zwei verschiedene Gruppen von Optionen für:
klogd – Kernel Log Daemon :Dies ist der Daemon, der die Meldungen vom Linux-Kernel abfängt und sie in Dateien protokolliert.
syslogd – System Log Daemon :Abfangen und Protokollieren anderer Nachrichten.

Die Standardkonfigurationsdatei listet einige Optionen auf, die wir näher beschreiben können:
syslogd-Optionen:

  • -m Intervall :Setzen Sie alle Minuten eine Linie mit „MARK“. „-m 0“ deaktiviert „MARK“ komplett
  • -r :Wird verwendet, um es der Einrichtung zu ermöglichen, Nachrichten vom Netzwerk über einen Internetdomänen-Socket mit dem Syslog-Dienst zu empfangen.
  • -x :Wenn Protokolle vom Netzwerk eintreffen (über die Option -r), werden die Quelladressen in den erstellten Protokollen bereitgestellt. Die Adressen sind im DNS nachzuschlagen. Wenn zu häufig Remote-Logging stattfindet (und das ist im Allgemeinen der Fall, wenn es ein Problem am Remote-Standort gibt), ist es nicht ratsam, Zeit mit DNS-Lookups zu verbringen. Diese Option kann verwendet werden, um DNS-Lookups zu deaktivieren.
  • -S :ausführliche Protokollierung
  • -d :Debug-Modus für syslogd

Klogd-Optionen:

  • -2 :Drucken Sie die Zeilen einmal mit Rohtext und noch einmal mit in Symbole umgewandelten Adressen. Dies wäre erforderlich, damit ksymoops die Originaldaten verarbeiten kann.
  • -x :Führen Sie keine EIP-Übersetzung durch (für OOPS), um die System.map-Datei nicht zu lesen (erhöhte Dump-Geschwindigkeit)
  • -d :Debug-Modus für klogd
  • -c n :Standardprotokollebene von Konsolenmeldungen

umask :SYSLOG_UMASK steuert die Standard-Zugriffsrechte / Berechtigungen für die generierten Protokolldateien.


Linux
  1. Linux-Betriebssystemdienst „iptables“

  2. Linux-Betriebssystemdienst „Netzwerk“

  3. Linux-Betriebssystemdienst „portmap“

  4. Linux-Betriebssystemdienst „auditd“

  5. Linux-Betriebssystemdienst „nfs“

Linux-Betriebssystemdienst „anacron“

Linux-Betriebssystemdienst „hplip“

Linux-Betriebssystemdienst „smartd“

Linux-Betriebssystemdienst „irqbalance“

Linux-Betriebssystemdienst „rpcgssd“

Linux-Betriebssystemdienst „yum-updatesd“