Computers & software

Linux : cron

1.Демон cron запускается с помощью /etc/rc.d/init.d/crond или /etc/rc.d/rc.local. Активация cron происходит ежеминутно.

Usage: /etc/rc.d/init.d/crond {start|stop|status|restart|condrestart|try-restart|reload|force-reload}


2.Задания cron пользователя user находятся в файле /var/spool/cron/user.

3.Строки файла cron содержат в 5 временных полей и поле команды. Поля отделяются друг от друга пробелами или символами табуляции.

Поля времени:
- минуты (возможные значения * или 0-59)
- часы ( возможные значения * или 0-23)
- дни месяца ( возможные значения * или 1-31)
- месяц( возможные значения * или 1-12)
- день недели ( возможные значения * или 0-7)

Эти поля может быть записаны следущим образом:
- все значения указываются символом *
- списком через запятую : 1,2,3
- диапазоном через тире : 1-31
- шагом значений диапазона : например */3 означает каждый третий раз)

Допустимо указание нескольких значений через запятую или диапазонов с использованием тире): "1,2,3", "0-4","8-12".
Диапазон указывается как два числа, разделенных дефисом. Указываемые числа включаются в диапазон.

@reboot - выполнить команду один раз, при запуске cron.
@yearly - выполнять команду каждое 1 января, "0 0 1 1 *".
@annually - эквивалентно @yearly.
@monthly - выполнять команду в начале каждого месяца, "0 0 1 * *".
@weekly - выполнять команду каждое воскресенье, "0 0 * * 0".
@daily - выполнять команду в полночь, "0 0 * * *".
@midnight - эквивалентно @daily.
@hourly - выполнять команду раз в час, "0 * * * *".


Поле команды содержит путь к файлу или командную строку для выполнения.

Управление crontab-файлами производится с помощью утилиты crontab.
Синтаксис:
crontab [ -u user ] { -l | -r | -e } file
-u - задает пользователя, для которого мы будет создавать данный crontab файл
-l - вывод информацию из crontab-файла на экран
-r - очищает список задач
-e - редактирование crontab-файла.