cron#
Crontab#
Print crontabs for all users:
find /var/spool/cron -type f -printf 'USER: %u \n' -exec cat {} \;
[root@rocky8 ~]# find /var/spool/cron -type f -printf 'USER: %u \n' -exec cat {} \;
USER: root
* * * * * sleep 2
USER: vagrant
* * * * * sleep 3
crontab syntax#
[root@rhel9-a ~]# cat /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
Helpful crontab syntax editor: crontab guru
Useful links/references#
- ArchWiki - cron
- Crontab - Quck Reference
- crontab guru - "The quick and simple editor for cron schedule expressions..."
- Cron cheatsheet
- LinuxUpskillChallenge: Day 10 - Scheduling Tasks - I rewrote/edited this
- Arabesque: Cron best practices
Monitoring cronjobs#
Monitoring cronjobs with Prometheus...
- Arabesque: Cron best practices. See section "Don't throw away useful output"
- Monitor cron jobs with Prometheus, Grafana and Node exporter - Example use-case that pipes cronjob status to a Bash script that then writes to a Prometheus textfile collector.
- Prometheus textfile-collector: Cronjob Monitoring Script - My implementation submitted as a PR to prometheus-textfile-collector-scripts community repo.