Linux Verify crond Daemon And Cronjobs Are Running

last updated in Categories , , , ,

How do I verify or check cronjob is running or not under a CentOS / RHEL / Fedora Linux from a shell prompt?

cron or crond is daemon to execute scheduled commands (Vixie Cron) on a Linux or Unix-like systems. Usually, it is started automatically from /etc/init.d or systemd on entering multi-user runlevels. [donotprint][/donotprint]

RHEL/CentOS v4.x/5.x/6.x and Fedora Linux (older version) Verify Cron Service

You can simply use any one of the following command to see if crond is running or not, enter:
# pgrep crond
OR
# service crond status
Sample outputs:

crond (pid 4370) is running...

If it is not running type the following two command to start crond:
# chkconfig crond on
# service crond start

Verify cron is running by viewing log file, enter:
# tail -f /var/log/cron

A note about CentOS/RHEL v7.x+ and latest version of Fedora Linux

You need to use the following command to find out if the crond is running or not:
$ systemctl status crond.service
Sample outputs:

   Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled)
   Active: active (running) since Tue 2015-05-19 14:53:32 EDT; 3min 7s ago
 Main PID: 1292 (crond)
   CGroup: /system.slice/crond.service
           └─1292 /usr/sbin/crond -n

If not running configure the crond service to start automatically on boot:
$ sudo systemctl enable crond.service
$ sudo systemctl start crond.service

A note about Debian / Ubuntu Linux (older version) Cron service

On a Debian and Ubuntu Linux cron logs its action logged to the syslog facility i.e. use /var/log/messages file:
# tail -f /var/log/messages
Find out if cron daemon is running or not, enter:
# pgrep cron
If not running start it, enter:
# update-rc.d cron defaults
# /etc/init.d/cron start

A note about Debian Linux v8.x+ and latest version of Ubuntu Linux

The syntax is as follows to check if the cron service is running or not:
# systemctl status cron
Sample outputs:

● cron.service - Regular background program processing daemon
   Loaded: loaded (/lib/systemd/system/cron.service; enabled)
   Active: active (running) since Tue 2015-05-19 11:49:32 IST; 12h ago
     Docs: man:cron(8)
 Main PID: 1053 (cron)
   CGroup: /system.slice/cron.service
           ├─1053 /usr/sbin/cron -f
           └─3020 /usr/bin/atop -a -w /var/log/atop/atop_20150520 600

If not running configure the crond service to start automatically on boot:
$ sudo systemctl enable cron.service
$ sudo systemctl start cron.service

See Debian / Linux service management for more information.

This entry is 3 of 16 in the Linux Cron Jobs Howto & Tutorial series. Keep reading the rest of the series:
  1. What is cron on a Linux or Unix-like systems?
  2. How To Add Jobs To cron Under Linux or UNIX?
  3. Verify crond Daemon And Cronjobs Are Running
  4. Start Restart and Stop The Cron or Crond Service
  5. List / Display All Cron Jobs
  6. Linux / UNIX Crontab File Location
  7. Change Crontab Email Settings ( MAILTO )
  8. Disable The Mail Alert By Crontab Command On a Linux or Unix-like Systems
  9. At What Time Cron Entries In cron.daily, cron.weekly, cron.monthly Run?
  10. Execute Cron Job After System Reboot
  11. Setup and Run PHP Script As A Cron Job
  12. Run crontab job every minute on a Linux or Unix-like system
  13. Running crontab (cron jobs) Every 10 Minutes
  14. Cron Job Script Execution on the Last Day of a Month
  15. Execute / Run crontab (cron jobs) every 1 minute
  16. Ubuntu create cron.log file

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

5 comment

    Still, have a question? Get help on our forum!