Le problème
Un démarrage du système d'exploitation Linux a échoué, à partir du journal de la console, nous pouvons voir que tout se passe bien au tout début, le noyau chargé et les scripts d'initialisation fonctionnaient correctement. Mais soudainement, le système d'exploitation Linux s'est arrêté (signal TERM reçu) après le démarrage du démon auditd.
... dracut: Switching root mount: mount point /proc/bus/usb does not exist Welcome to Oracle Linux Server Starting udev: udev: starting version 147 (snip) Mounting local filesystems: EXT4-fs (xvda1): mounted filesystem with ordered data mode. Opts: (null) EXT4-fs (dm-4): mounted filesystem with ordered data mode. Opts: (null) EXT4-fs (dm-6): mounted filesystem with ordered data mode. Opts: (null) EXT4-fs (dm-9): mounted filesystem with ordered data mode. Opts: (null) EXT4-fs (dm-5): mounted filesystem with ordered data mode. Opts: (null) EXT4-fs (dm-8): mounted filesystem with ordered data mode. Opts: (null) EXT4-fs (dm-3): mounted filesystem with ordered data mode. Opts: (null) EXT4-fs (dm-2): mounted filesystem with ordered data mode. Opts: (null) [ OK ] Enabling local filesystem quotas: [ OK ] Enabling /etc/fstab swaps: Adding 16777212k swap on /dev/mapper/vg_ol68-LogVol08. Priority:-1 extents:1 across:16777212k SS [ OK ] Entering non-interactive startup Starting OVM guest daemon: [ OK ] Calling the system activity data collector (sadc)... Starting monitoring for VG vg_ol68: 10 logical volume(s) in volume group "vg_ol68" monitored [ OK ] NET: Registered protocol family 10 Bringing up loopback interface: [ OK ] Bringing up interface eth0: Determining if ip address x.x.x is already in use for device eth0... [ OK ] Starting auditd: type=1305 audit(1500420382.015:3): audit_pid=1626 old=0 auid=4294967295 ses=4294967295 res=1 init: rc main process (1341) killed by TERM signal [ OK ]
Confirmé qu'aucun problème de panique du noyau ne s'est produit. Le système d'exploitation Linux fonctionnait bien depuis des jours. Aucune opération/changement artificiel avant le problème.
La solution
Normalement, le système d'exploitation Linux ne s'arrêtera pas de lui-même. Mais certaines applications/utilitaires le font. Étant donné que chaque fois que le signal TERM était reçu au démarrage du démon auditd, nous avons constaté que le démon auditd avait la fonctionnalité d'arrêter le système d'exploitation Linux dans certaines situations spécifiques.
Les éléments suivants dans « man auditd.conf » arrêtent le système d'exploitation Linux lorsqu'ils sont définis sur « halt ».
- space_left_action
- admin_space_left_action
- disk_full_action
- disk_error_action
Le système d'exploitation Linux dans ce cas a ces paramètres "d'arrêt".
# cat /etc/audit/auditd.conf | grep halt admin_space_left_action = halt disk_full_action = halt disk_error_action = halt
Et le volume de /var/log/audit n'a que 6 Mo d'espace disponible.
/dev/mapper/vg_LogVol05 16040 428304 61524 88% /var/log/audit
Ceci est le comportement attendu lorsque auditd a trouvé un problème d'espace ou une erreur de disque, veuillez vérifier le système d'exploitation Linux en conséquence. Si vous ne voulez pas qu'auditd arrête le système d'exploitation Linux, vous pouvez modifier le "halt" en "syslog", veuillez vous référer à "man auditd.conf" pour plus de détails.
# man auditd.conf