Il problema
Un avvio del sistema operativo Linux non è riuscito, dal registro della console possiamo vedere che tutto va bene all'inizio, il kernel caricato e gli script di inizializzazione funzionavano correttamente. Ma improvvisamente il sistema operativo Linux si stava spegnendo (ricevuto il segnale TERM) dopo l'avvio del demone 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 ]
Confermato che non si è verificato alcun problema di panico del kernel. Il sistema operativo Linux funzionava bene da giorni. Nessuna operazione/modifica artificiale prima del problema.
La soluzione
Normalmente il sistema operativo Linux non si spegne da solo. Ma alcune applicazioni/utilità lo fanno. Poiché ogni volta che veniva ricevuto il segnale TERM all'avvio del demone auditd, abbiamo riscontrato che il demone auditd ha la funzione di arrestare il sistema operativo Linux in alcune situazioni specifiche.
I seguenti elementi in "man auditd.conf" arrestano il sistema operativo Linux quando il valore viene impostato su "halt".
- spazio_sinistra_azione
- admin_space_left_action
- azione_disco_completa
- azione_errore_disco
Il sistema operativo Linux in questo caso ha quelle impostazioni di "arresto".
# cat /etc/audit/auditd.conf | grep halt admin_space_left_action = halt disk_full_action = halt disk_error_action = halt
E il volume di /var/log/audit ha solo 6 MB di spazio disponibile.
/dev/mapper/vg_LogVol05 16040 428304 61524 88% /var/log/audit
Questo è il comportamento previsto quando auditd ha rilevato un problema di spazio o un errore del disco, controllare di conseguenza il sistema operativo Linux. Se non vuoi che auditd spenga il sistema operativo Linux, puoi modificare "halt" in "syslog", fare riferimento a "man auditd.conf" per maggiori dettagli.
# man auditd.conf