Il problema
Impossibile avviare il servizio Nagios Network Monitoring dopo il riavvio.
-- var/log/messages ---- May 6 09:14:28 [hostname] nagios: Checking global event handlers... May 6 09:14:28 [hostname] nagios: Checking obsessive compulsive processor commands... May 6 09:14:28 [hostname] nagios: Checking misc settings... May 6 09:14:28 [hostname] nagios: Total Warnings: 0 May 6 09:14:28 [hostname] nagios: Total Errors: 0 May 6 09:14:28 [hostname] nagios: Things look okay - No serious problems were detected during the pre-flight check May 6 09:14:28 [hostname] nagios: Failed to obtain lock on file /var/run/nagios/nagios.pid: No such file or directory May 6 09:14:28 [hostname] nagios: Bailing out due to errors encountered while attempting to daemonize... (PID=9029) May 6 09:14:28 [hostname] systemd: nagios.service: control process exited, code=exited status=254 May 6 09:14:28 [hostname] systemd: Failed to start Nagios Network Monitoring. May 6 09:14:28 [hostname] systemd: Unit nagios.service entered failed state. May 6 09:14:28 [hostname] systemd: nagios.service failed.
$ less installed-rpms | grep nagios nagios-4.3.4-3.el7.x86_64 Mon Feb 18 14:30:00 2019 nagios-common-4.3.4-3.el7.x86_64 Mon Feb 18 14:29:59 2019
La soluzione
Nel file “/etc/nagios/nagios.cfg “, il parametro lock_file è stato impostato su “/var/run/nagios/nagios.pid “. In CentOS/RHEL, non è consigliabile scrivere in /var/run poiché /var/run è solitamente montato come tmpfs, che è una partizione mappata nella RAM. Ovviamente la RAM viene cancellata al riavvio, così come tutti i file system tmpfs. Pertanto, non è stato possibile trovare il file "/var/run/nagios/nagios.pid".
# cat /etc/nagios/nagios.cfg lock_file=/var/run/nagios/nagios.pid
In /etc/nagios/nagios.cfg, il parametro "lock_file" dovrebbe puntare a una directory in cui i dati sono persistenti durante il riavvio. Questo è il file di blocco che Nagios utilizzerà per memorizzare il suo numero PID quando è in esecuzione in modalità demone. Modificare il parametro lock_file da “/var/run/nagios/nagios.pid” a “/nagios/nagios.pid”.
Salva le modifiche e riavvia il servizio “nagios”.