Provided by: systemd-cron_1.16.7-1_amd64
NAME
systemd.cron - systemd cron units
SYNOPSIS
cron.target, cron-update.path, cron-update.service, cron-failure@.service.
DESCRIPTION
These units provide cron daemon functionality by running scripts in cron directories. The crontabs are monitored by cron-update.path and are automatically translated by systemd-crontab-generator(8).
FILES
/etc/cron.hourly Directory for scripts to be executed every hour. /etc/cron.daily Directory for scripts to be executed every day. /etc/cron.weekly Directory for scripts to be executed every week. /etc/cron.monthly Directory for scripts to be executed every month. /etc/cron.yearly Directory for scripts to be executed every year. /etc/cron.d Directory for crontabs to be executed on a custom schedule. The files in this folder must follow the crontab(5) layout. /usr/lib/systemd/system/<schedule>.timer /etc/systemd/system/<schedule>.timer These native systemd timers will overide the legacy cron jobs. You can also use this mechanism to mask an unneeded crontab provide by a package: ln -s /dev/null /etc/systemd/system/[package].timer /var/spool/cron/crontabs User's crontabs, to be modifier using the crontab(1) utility.
SYSTEM UNITS
cron.target The target unit which starts the others. This should be enabled and started to use cron functionality. cron-update.path This monitor alteration of the FILES listed hereupper and will call cron- update.service cron-update.service This trigger a 'systemctl daemon-reload', the only way to ask systemd to rerun the generator. cron-failure@.service This service will send an email in case of failure.
LIMITATIONS
This cron replacement only send mails on failure. The log of jobs is saved in systemd journal. Do not use with a cron daemon or anacron, otherwise scripts may be executed multiple times. All services are run with Type=oneshot, which means you can't use systemd-cron to launch long lived forking daemons.
EXTENSIONS
The generator can optionally turn all crontabs in persistent timers with the PERSISTENT=true flag, while a regular cron+anacron setup won't catch-up the missed executions of crontabs on boot.
EXAMPLES
Start cron units # systemctl start cron.target Start cron units on boot # systemctl enable cron.target View script output # journalctl -u cron-<schedule> Override some generated timer start time # systemctl edit cron-geoip-database-contrib-root-<...>.timer --full keep existing statements, but change this one: [Timer] OnCalendar=*-*-* 18:36:00 Override cron-daily.service priority, useful for old computers # systemctl edit cron-daily.service this will open a blank editor when you can type a drop-in configuration file that will extend the current .service [Service] CPUSchedulingPolicy=idle IOSchedulingClass=idle Example service file executed every hour [Unit] Description=Update the man db [Service] Nice=19 IOSchedulingClass=2 IOSchedulingPriority=7 ExecStart=/usr/bin/mandb --quiet [Install] WantedBy=cron-hourly.target
NOTES
1. The exact times scripts are executed is determined by the values of the special calendar events hourly, daily, weekly, monthly, and yearly defined by systemd.time(7). 2.
DIAGNOSTICS
You can execute "systemctl list-timers" to have a overview of timers and know when they will elapse.
SEE ALSO
systemd(1), systemd.unit(5), systemd.service(5), systemd.timer(5), systemd.time(7), systemd-crontab-generator(8), crontab(1), crontab(5)
AUTHOR
Dwayne Bent