Sometimes the crond service fails quite often without any clue and it becomes necessary to monitor the cron service and auto-restart it. cPanel offers ‘chkservd’, a monitoring daemon that monitors the services on the server and restart them if found offline. cPanel/WHM do not provide an option to include the ‘crond’ service under the monitoring daemon, so following are the steps you can follow to achieve it:
Create a crond file under the chkservd.d directory where all the services files are placed:
nano /etc/chkserv.d/crond
Add the following and save the file:
service[crond]=x,x,x,/etc/init.d/crond restart,crond,root
Now you need to edit the chkservd configuration file and enable the crond service for monitoring:
nano /etc/chkserv.d/chkservd.conf
add the following line at the end of the file
crond:1
Now, save the file and restart the chkservd service for the new changes to take affect:
/scripts/restartsrv chkservd
In order to verify if chkservd auto-restarts the crond service if found offline, stop the service manually
service crond stop
and watch the logs
tail -f /var/log/chkservd.log
You will notice that the crond service is restarted automatically within 5 minutes.