GNU/Linux >> Tutoriels Linux >  >> Linux

Service d'exploitation Linux "syslog"

Syslog est la norme générale pour la journalisation des messages système et programme dans l'environnement Linux. Ce service constitue le démon de journalisation du système, où n'importe quel programme peut effectuer sa journalisation (débogage, sécurité, fonctionnement normal) via en plus les messages du noyau Linux.

En principe, les logs gérés par syslog sont disponibles dans le répertoire /var/log/ sur le système Linux :

# 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

où certains des journaux sont vidés dans un sous-répertoire comme cups, samba, httpd. Parmi les journaux sous /var/log le /var/log/messages est le plus courant car les journaux système du noyau/noyau y sont conservés. Les modules du noyau s'y déchargent généralement aussi. Ainsi, pour le diagnostic/la surveillance des problèmes, /var/log/messages est le principal fichier journal à examiner.

Les journaux sont alternés chaque semaine (en renommant le journal existant en filename.number order) :

# 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

le fichier journal faisant l'objet d'une rotation hebdomadaire est supprimé au bout de 4 semaines (le nombre total de journaux couvre une période de 5 semaines). Ce mécanisme de rotation est fourni par crond et logrotate.

Il existe également rsyslogd fourni par le package rsyslog qui est une version plus fiable et étendue de syslogd. Pour plus d'informations, installez le package rsyslog et consultez la page de manuel de rsyslogd.

Contrôle des services

Pour démarrer le service syslog, utilisez l'une des commandes ci-dessous :

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

Pour arrêter le service syslog, utilisez l'une des commandes ci-dessous :

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

Pour voir le niveau d'exécution et la disponibilité du service, procédez comme suit :

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

Si le service est désactivé, vous pouvez l'activer en :

# 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

Configuration

Le fichier de configuration du service syslogd est /etc/sysconfig/syslog . Le fichier par défaut est comme ci-dessous :

# 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".

Vous y voyez deux groupes d'options différents pour :
klogd – Kernel Log Daemon  :Il s'agit du démon qui récupère les messages du noyau Linux et les enregistre dans des fichiers.
syslogd – System Log Daemon  :Interception et journalisation d'autres messages.

Le fichier de configuration par défaut répertorie certaines options que nous pouvons décrire plus en détail :
options syslogd :

  • -m intervalle :Mettez une ligne avec "MARK" toutes les minutes d'intervalle. "-m 0" désactive complètement "MARK"
  • -r :Utilisé pour permettre à l'installation de recevoir des messages du réseau à l'aide d'un socket de domaine Internet avec le service syslog.
  • -x :Lorsque les journaux arrivent du réseau (via l'option -r), les adresses source seront fournies dans les journaux créés. Les adresses doivent être recherchées dans le DNS. Si la journalisation à distance est trop fréquente (et c'est généralement le cas lorsqu'il y a un problème sur le site distant), il n'est pas préférable de passer du temps sur les recherches DNS. Cette option peut être utilisée pour désactiver les recherches DNS.
  • -S  :journalisation détaillée
  • -d :mode débogage pour syslogd

options klogd :

  • -2 :imprime les lignes une fois avec du texte brut et une fois de plus avec des adresses converties en symboles. Cela serait nécessaire pour que ksymoops effectue le traitement sur les données d'origine.
  • -x :Ne pas faire de traduction EIP (pour OOPS) pour ne pas lire le fichier System.map (vitesse de vidage accrue)
  • -d :mode de débogage pour klogd
  • -c n  :Niveau de journalisation par défaut des messages de la console

umask :SYSLOG_UMASK contrôle les privilèges/permissions d'accès par défaut pour les fichiers journaux générés.


Linux
  1. Service du système d'exploitation Linux "nfs"

  2. Service du système d'exploitation Linux 'microcode_ctl'

  3. Service d'exploitation Linux "hplip"

  4. Service d'exploitation Linux "irqbalance"

  5. Service de système d'exploitation Linux "rpcgssd"

Service de système d'exploitation Linux « ldap »

Service d'exploitation Linux "yppasswdd"

Service d'exploitation Linux "xendomains"

Service de système d'exploitation Linux « nscd »

Service d'exploitation Linux "squid"

Service d'exploitation Linux "smartd"