Cron – планировщик для linux и других UNIX подобных систем
Выполняет задания по расписанию.
Crontab отвечает за выполнения задач по расписанию для каждого пользователя(ей).
Cron файлы и директории.
/etc/crontab /etc/cron.d /var/spool/cron/(юзернейм) /etc/cron.hourly /etc/cron.daily /etc/cron.weekly /etc/cron.monthly |
Ограничения.
Cron имеет встроенную функцию, которая позволяет задать, кто может и кто не может его использовать.
Это может быть сделано с помощью /etc/cron.allow и /etc/cron.deny файлов. Если имя пользователя существует в файле /etc/cron.allow то пользователю разрешено выполнять crontab команду.
Если /etc/cron.allow файл не существует, вы можете использовать кронтаб если имя пользователя не добавлено в файл “/etc/cron.deny“.
Если файл cron.deny существует но в нём нет ни одной записи то только пользователю root можно использовать команду crontab. allow/deny файлы должны быть вида:
username1 username2 |
В каждой строчке должно быть только по одному имени пользователя в строке, иначе работать не будет.
Crontab Функции и объяснение.
Кронтаб файл содержит 5 полей для указания времени, дня, даты и затем команда, которая будет выполняться в заданный интервал времени. Ниже Crontab синтаксис:
* * * * * команда_которая_должна_выполнится - - - - - | | | | | | | | | +—– День недели | | | +——– Месяц | | +———– День месяца | +————— Час +—————— Минуты |
Значения:
Минуты (0-59), Часы (0-23), День (1-31), месяц (1-12), День недели (0-6 with 0=Воскресенье). |
‘*’ означает – все возможные значения
“*/5” рассматривается как каждые 5 минут, часов, дней или месяцев. Если заменить “5” другим численным значением тогда этот параметр изменится на заданное значение (*/10 – каждые 10 минут, */20 – каждые 20 минут и т.д.)
4,8,12 “,” рассматриваются как “И” поэтому, если их поместить в “Час” это будет означать 4, 8 и 12 часов. Если поместить в “День недели” это будет 4-го 8-го и 12-го числа. “,” Используется для определения дополнительные параметра [дата, время, день]
2-12 Означает с 2-х до 12-ти. Таким образом, если их поместить в “день недели”, это будет с 2-го до 12-го выполнять задание.
Если установить в “Час” выполнятся задание будет с 2-х до 12-ти. “-” Используется, чтобы определить диапазон дат [времени]
Crontab Команды:
crontab -e Изменить кронтаб файл или создать если он не существует. crontab -l Показать записи в crontab-е. crontab -r Удалить crontab. crontab -u username -e Эта опция позволяет вам изменить или просмотреть кронтаб файл пользователя (username), только супер пользователь (root) может использовать эту опцию. crontab -u username -l Показывает crontab записи пользователя username. |