Настройка планировщика задач Cron в Linux

Александр Мельников

26 сентября 2019

Обновлено 13 августа 2022

Linux

Планировщик заданий является по праву одним из важных компонентов системы. По умолчанию, в дистрибутивах Linux, а также FreeBSD, используется планировщик заданий Cron. Рассмотрим как его настроить.

Настроить cron можно несколькими способами. Самый простой и быстрый – указать задание руками в файл /etc/crontab. Проблема в том, что это может сделать только пользователь root.

Структура файла /etc/crontab представляет собой последовательность установок даты и времени, имени пользователя от которого выполняется задача и явное указание исполняемого файла.

# m h dom mon dow user command

# – строка закомментирована, т.е. не выполняется планировщиком

m – минуты. Диапазон значений 0-59

h – часы. Диапазон значений 0-23.

dom – day of month – день месяца (число).

Диапазон значений 1-31

mon – месяц. Диапазон значений 1-12

dow – day of week – день недели. указывается числом, где 0 – воскресенье, 6 – суббота.

user – пользователь от которого выполняется задача.

command – выполняемая задача.

Важно! Значения минут, часов, дней месяца, дней недели, а также месяца могут быть * (звездочкой) принимая все доступные значения. Также можно использовать список параметров разделенных запятой.

Примеры разберем подробнее немного позже.

Простым пользователям доступна системная утилита crontab. Для гибкости использования используются параметры:

 

crontab -e

Используется для редактирования или создания файла расписания для текущего пользователя

crontab -l

Вывод существующих задач в расписании пользователя

crontab -r

Удаление файла расписания текущего пользователя

crontab -u username

Работа с расписаниями указанных пользователей. Выполняется только от пользователя root

Добавим задание.

Для этого в консоли пишем команду:

crontab -e

Запустится редактор файла используемый по умолчанию (Ubuntu – nano/vi, FreeBSD – ee), в нашем случае mcedit из пакета Midnight Commander.

Синтаксис команд идентичен как и для файла /etc/crontab, за исключением отсутствия параметра имени пользователя. Это значит, что после сохранения файла, все задачи будут выполняться от текущего пользователя.

Сохраняем файл, выходим из редактора и проверяем список заданий crontab -l.

 

Проверим как работает удаление файла заданий – crontab -r.

Важно! Программа не спрашивает уверены ли вы в удалении файла заданий. Если нужно удалить конкретное задание, следует использовать crontab -e.

Для администратора важно, чтобы не все пользователи могли пользоваться планировщиком. Для этих целей можно использовать файлы /etc/cron.allow и /etc/cron.deny (в некоторых дистрибутивах эти файлы должны размещаться в /etc/cton. d). По умолчанию, использование cron разрешено всем пользователям.

Примеры использования в файле /etc/crontab.

Выполнение задачи каждые 5 минут от пользователя root:

*/5 * * * * root /root/scripts/script1.sh

В полдень и полночь:

0 */12 * * * root /root/scripts/backup.sh

Перезагрузка сервера в 0:00 в первый день месяца (исключительно как пример):

0 0 1 * * root reboot

Выполнение скрипта с понедельника по пятницу в полночь:

0 0 * * 1-5 root /root/script/backup_db.sh

Неправильный пример:

* 0 * * 1-5 root /root/script/backup_db.sh

Ошибка в том, что скрипт будет запускаться с понедельника по пятницу каждую минуту с 0:00 по 0:59

В заданиях назначаемых через crontab -e (т.е. от текущего пользователя) не указывается параметр имени пользователя, в случае примеров – root.

На что еще следует обратить внимание:

Все пути до исполняемых файлов следует писать абсолютными.

Скрипты исполняются из корневой директории, а следовательно, при написании скрипта следует указывать рабочий каталог, либо абсолютные пути до целевых файлов (если в ходе работы скрипта генерируются файлы-отчета и им подобные)

Оценка:

5 из 5

Аverage rating : 5

Оценок: 1

191028 Санкт-Петербург Литейный пр., д. 26, Лит. А

+7 (812) 403-06-99

700 300

ООО «ИТГЛОБАЛКОМ ЛАБС»

191028 Санкт-Петербург Литейный пр., д. 26, Лит. А

+7 (812) 403-06-99

700 300

ООО «ИТГЛОБАЛКОМ ЛАБС»

700 300

Настройка Cron — Losst

Системным администраторам, да и обычным пользователям часто приходится автоматизировать различные задачи по обслуживанию и работе с Linux с помощью скриптов.

Это очень удобно, вы просто запускаете скрипт, и он делает все что необходимо без вашего вмешательства. Следующий шаг в этом пути — настроить автоматически запуск нужного скрипта в нужное время.

Именно для этих задач в Linux используется системный сервис cron. Это планировщик, который позволяет выполнять нужные вам скрипты раз в час, раз в день, неделю или месяц, а также в любое заданное вами время или через любой интервал. Программа часто используется даже другими службами операционной системы. В этой статье мы рассмотрим как выполняется настройка Cron и разберем основные часто используемые примеры.

Содержание статьи:

Как работает Cron?

Фактически, Cron — это сервис, как и большинство других сервисов Linux, он запускается при старте системы и работает в фоновом режиме. Его основная задача выполнять нужные процессы в нужное время. Существует несколько конфигурационных файлов, из которых он берет информацию о том что и когда нужно выполнять. Сервис открывает файл /etc/crontab, в котором указаны все нужные данные. Часто, в современных дистрибутивах там прописан запуск утилиты run-parts, которая запускает нужные скрипты из следующих папок:

  • /etc/cron.minutely — каждую минуту;
  • /etc/cron.hourly — каждый час;
  • /etc/cron.daily — каждый день;
  • /etc/cron.weekly — каждую неделю;
  • /etc/cron.monthly — каждый месяц.

В этих папках должны находиться скрипты, которые нужно выполнять с указанным интервалом. Скрипты должны иметь права на выполнение и их имя не должно содержать точки. Это очень сильно облегчает работу с планировщиком для новых пользователей. Также в файле crontab прописан запуск команды anacron, которая работает так же как и cron, только предназначена для задач, которые нужно выполнять раз в длительный период, например, раз в день, неделю, месяц, год.

Она позволяет выполнять их даже если компьютер работает не всегда и время от времени выключается. Дата выполнения задания последний раз записывается в файл /var/spool/anacron, а затем, при следующем запуске anacron проверяет был ли запущен нужный процесс в нужное время, и если нет, то запускает его. Сам же сервис cron больше рассчитан на выполнение задач в течение дня или с точно расписанным временем и датой.

Настройка Cron

Для настройки времени, даты и интервала когда нужно выполнять задание используется специальный синтаксис файла cron и специальная команда. Конечно, вы всегда можете отредактировать файл /etc/crontab, но этого делать не рекомендуется. Вместо этого, есть команда crontab:

crontab -e

Ее всегда желательно выполнять с опцией -e, тогда для редактирования правил будет использован ваш текстовый редактор по умолчанию. Команда открывает вам временный файл, в котором уже представлены все текущие правила cron и вы можете добавить новые. После завершения работы команды cron файл будет обработан и все правила будут добавлены в /var/spool/cron/crontabs/имя_пользователя причем добавленные процессы будут запускаться именно от того пользователя, от которого вы их добавляли.

Поэтому тут нужно быть аккуратным, и если вам нужно выполнять скрипты от рута, то и crontab нужно выполнить от рута, а не от пользователя. Это часто становится причиной проблем.

Синтаксис crontab

Как я уже говорил, время задается особым синтаксисом, давайте рассмотрим синтаксис настройки одной задачи cron:

минута час день месяц день_недели /путь/к/исполняемому/файлу

Нужно сказать, что обязательно нужно писать полный путь к команде, потому что для команд, запускаемых от имени cron переменная среды PATH будет отличаться, и сервис просто не сможет найти вашу команду. Это вторая самая распространенная причина проблем с Cron. Дата и время указываются с помощью цифр или символа ‘*’. Этот символ означает, что нужно выполнять каждый раз, если в первом поле — то каждую минуту и так далее. Ну а теперь перейдем к примерам.

Примеры настройки cron

Сначала можно посмотреть задачи cron для суперпользователя, для этого можно воспользоваться опцией -l:

crontab -l

Вы можете удалить все существующие задачи командой -r:

crontab -r

Давайте предположим, что нам нужно запускать от имени суперпользователя наш скрипт по адресу /usr/local/bin/serve. Какой-нибудь обслуживающий скрипт. Самый простой пример — запускать его каждую минуту:

* * * * * /usr/local/bin/serve

Далее, усложним, будем запускать каждый час, в нулевую минуту:

0 * * * * /usr/local/bin/serve

Еще дальше:

Запускаем в нулевую минуту нулевого часа, каждый день, это в 12 ночи:

0 0 * * * /usr/local/bin/serve

Если идти так дальше, то можно запускать в первый день каждого месяца:

0 0 1 * * /usr/local/bin/serve

Можно в любой день, например, 15 числа:

0 0 15 * * /usr/local/bin/serve

В первый день недели первого месяца года, 0 часов 0 минут:

0 0 * 1 0 /usr/local/bin/serve

Или в нулевой день недели каждого месяца:

0 0 * * 0 /usr/local/bin/serve

Вы можете выбрать любую минуту, час и день недели, например, 15.30 во вторник:

30 15 * * 2 /usr/local/bin/serve

Понедельник считается первым днем, воскресенье — это седьмой или нулевой день. Еще можно писать сокращенное название дня недели, например sun — воскресенье:

30 15 * * sun /usr/local/bin/serve

Для того чтобы указать определенный интервал нужно использовать символ «-«, например, каждый час, с семи утра до семи вечера:

0 7-19  * * * /usr/local/bin/serve

Если нужно запустить команду несколько раз, можно использовать разделитель «,». Например, запустим скрипт в 5 и 35 минут пятого (16:05 и 16:35), каждый день:

5,35 16  * * * /usr/local/bin/serve

Вы можете захотеть не указывать отдельно время, а просто указать интервал, с которым нужно запускать скрипт, например, раз в 10 минут. Для этого используется разделитель косая черта — «/»:

*/10 * * * * /usr/local/bin/serve

Кроме того, для некоторых часто используемых наборов были придуманы переменные, вот они:

  • @reboot — при загрузке, только один раз;
  • @yearly, @annually — раз год;
  • @monthly — раз в месяц;
  • @weekly — раз в неделю;
  • @daily, @midnight — каждый день;
  •  @hourly — каждый час.

Например, вот так просто будет выглядеть команда запуска скрипта раз в час:

@hourly /usr/local/bin/serve

Если же вы собрались добавить скрипт в одну из папок, то, как я уже говорил, нужно чтобы его имя было без точек и у него были права на выполнение:

sudo vi /etc/corn.daily/basckup

#!/bin/bash ......

Скрипт должен выглядеть подобным образом. Теперь вы знаете как настроить cron, осталось проверить как все работает.

Отладка работы

После того как вы настроили правила, еще хотелось бы проверить работают ли они. Для этого ждем того времени, когда скрипт уже должен быть выполнен и смотрим лог cron. Иногда он находится в /var/log/cron, а иногда пишется в syslog. Например, у меня в crontab есть такая строка:

Она должна выполняться в 19.40 каждый день, теперь смотрим лог:

grep CRON /var/log/syslog

И видим что в нашем логе она действительно есть и выполняется целиком успешно. Если бы были какие-либо ошибки, то тут же было бы выведено сообщение.

Если нужно проверить скрипт, который находится в одной из специализированных папок, то тут еще проще, просто запустите run-paths, передав ей в параметр нужную папку или даже сам скрипт:

sudo run-paths /etc/cron.daily/

Дальше вы увидите весь вывод, включая вывод скрипта и сможете быстро понять в чем проблема.

Выводы

В этой статье мы рассмотрели как выполняется настройка cron для удобного планирования автоматических задач. Надеюсь, эта информация была полезной для вас.

Как настроить задание Cron в Linux? {Расписание задач}

Введение

Демон Cron — это встроенная утилита Linux, которая запускает процессы в вашей системе в запланированное время. Cron считывает crontab  (таблицы cron) для предопределенных команд и сценариев.

С помощью специального синтаксиса можно настроить задание cron для планирования автоматического запуска сценариев или других команд.

В этом руководстве с примерами показано, как настроить задание cron в Linux.

Prerequisites

  • A system running Linux
  • Access to a command line/terminal window ( Ctrl Alt T or Ctrl Alt F2 )
  • A user учетная запись с правами root или sudo  привилегиями

Базовый синтаксис Crontab

Cron считывает файлы конфигурации для получения списка команд для выполнения. Демон использует специальный синтаксис для интерпретации строк в crontab таблицы конфигурации.

Чтобы настроить задание cron, нам нужно понять основные элементы, из которых состоит этот синтаксис. Стандартная форма строки crontab выглядит следующим образом:

 a b c d e /directory/command output 

Таким образом, частями команды cron являются:

1. Первые пять полей a b c d 1 e 90 время/дата и повторение задания.

2. Во второй секции /directory/command указывает расположение и сценарий, который вы хотите запустить.

3. Последний сегмент вывод является необязательным. Он определяет, как система уведомляет пользователя о завершении задания.

1. Формат времени задания Cron

Первые пять полей в команде представляют числа, которые определяют, когда и как часто выполняется команда. Пробел отделяет каждую позицию, которая представляет определенное значение.

В таблице ниже приведены возможные значения полей и пример синтаксиса:

Field Possible Values ​​ Syntax Description
[a] – Minute 0 – 59 7 * * * *  The Задание cron запускается каждый раз, когда системные часы показывают 7 в минутной позиции.
[b] – Час 0 – 23 0 7 * * * ).
[c] – День 0 – 31 0 0 7 * * День месяца 7, что означает, что задание выполняется каждые 7 числа числа месяца.
[d] — Месяц 0 = нет и 12 = декабрь 0 0 0 7 * Числовое значение месяца равно 7, что означает, что задание выполняется только в июле.
[e] — день недели 0 = воскресенье и 7 = воскресенье 0 0 * * 7  7 в текущей позиции означает, что задание будет выполняться только по воскресеньям.

2. Команда для выполнения

В следующем разделе указывается команда для выполнения. Он представляет собой точный каталог и имя файла скрипта или команд, которые вы хотите выполнить cron. Например:

 /root/backup.sh 

В нашем примере команда просматривает корневой каталог системы и запускает backup. sh скрипт. Вы можете указать любой сценарий или команду, которую пожелаете.

3. Вывод (необязательно)

По умолчанию cron отправляет электронное письмо владельцу файла crontab при его запуске. Это удобный способ отслеживать задачи. Имейте в виду, что обычные или второстепенные задачи могут быстро заполнить ваш почтовый ящик.

Поскольку это необязательная функция, вы можете предотвратить этот сценарий, отключив вывод электронной почты. Чтобы отключить вывод электронной почты, добавьте следующую строку: >/dev/null 2>&1 , после полей времени и команды.

 * * * * * каталог/команда >/dev/null 2>&1 

4. Использование операторов (необязательно)

Для повышения эффективности синтаксис cron также использует операторы. Операторы — это специальные символы, которые выполняют операции над указанными значениями в поле cron.

  • Звездочка (*) обозначает все значения. Используйте этот оператор, чтобы задачи выполнялись все месяцы или все дни недели.
  • Запятая (,) указывает отдельные значения.
  • Дефис (–) указывает диапазон значений.
  • Косая черта (/) используется для разделения значения на шаги. (*/2 — каждое второе значение, */3 — каждое третье, */10 — каждое десятое и т. д.)

Настройка задания Cron

Чтобы настроить задание cron, откройте crontab предпочтительный текстовый редактор и введите синтаксис для команды, которую вы хотите запустить.

Как редактировать файл crontab?

Чтобы открыть файл конфигурации crontab для текущего пользователя, введите в окне терминала следующую команду:

 crontab –e 

Вы можете добавить любое количество запланированных задач, по одной в строке.

Когда вы закончите добавлять задачи, сохраните файл и выйдите. Демон cron прочитает и выполнит предоставленные инструкции.

Помните, Cron не нужно перезапускать, чтобы изменения вступили в силу.

Редактировать crontab для другого пользователя

Чтобы отредактировать crontab для другого пользователя, введите следующую команду:

 crontab –u другое_имя_пользователя –e 

Примечание: Если вам нужно запустить задание cron при перезагрузке, обратитесь к нашему руководству Crontab on Boot.

Примеры заданий Cron

При указании заданий используйте звездочку, чтобы указать все значения. Ввод значения в одно из полей запускает команду только для этого значения. Например:

 * 2 0 * 4 /root/backup.sh 

Несмотря на то, что он настроен на 2 часа ночи, он запускается только тогда, когда первое число месяца (0) приходится на среду (4). Если вы измените на следующее:

 * 2 0 * * /root/backup.sh 

Команда запускается первого числа каждого месяца в 2 часа ночи. В следующей таблице представлены несколько основных команд с использованием файла /root/backup. sh из наших предыдущих примеров.

Крон. Каждые 30 минут 30 * * * * /root/backup.sh
Run Cron Job Every Hour 0 * * * */root/backup.sh
запустить работу Cron каждый день в полуночи 0 0 * * * /root/backup.sh
Запуск Cron. корень/backup.sh
Run Cron Job Every 1 st  of the Month 0 0 1 * * /root/backup.sh
Run Cron Job Every 15 th  of the Month 0 0 15 * * /root/backup.sh
РЕБЕР CRON 1 декабря ST - Midnight 0 0 0 12 * /CROOT/back. sh
Запустить задание Cron в субботу в полночь 0 0 * * 6 /root/backup.sh

Использование специальных символов

Для разделения строки на шаги можно использовать временные интервалы. Для запуска резервного копирования каждые 15 минут:

 */15 * * * * 

* означает все значения, а /15 подсчитывается и повторяется каждые 15 минут.

Используйте дефис для указания диапазона. Чтобы запускать код каждый будний день в 4 утра:

 0 4 * * 1-5 /root/backup.sh 

В этом случае 1-5 указывает понедельник - пятница.

Используйте запятую, чтобы указать отдельные экземпляры, когда должен запускаться код:

 0 4 * * 2,4 /root/backup.sh 

Это запустит код в 4 утра во вторник и четверг.

Некоторые подстановочные знаки можно комбинировать. Запустите команду через день в 37 минут после часа:

 37 1-23/2 * * * /root/backup.sh 

1-23 указывает диапазон часов, /2 устанавливает интервал через каждый час.

Список существующих заданий Cron

Вы можете получить список всех заданий cron в вашей системе, не открывая файл конфигурации crontab. Введите следующую команду в окне терминала:

 crontab –l 

Примечание: Ознакомьтесь с сообщением о команде at, альтернативе работе cron.

Заключение

Теперь вы хорошо понимаете, как пользоваться cron для планирования задач в Linux. Используйте примеры, представленные в этом руководстве, чтобы создавать и планировать задания cron в вашей системе. Со временем расширяйте задачи, используя специальные символы, чтобы автоматизировать большинство ваших рутинных задач.

Дополнительные руководства по заданиям Cron см. в нашем руководстве Kubernetes CronJob.

Как настроить Crontab в Linux → Отличная документация » Webdock.io

Планирование в Linux выполняется системным демоном cron. Демон cron выполняет задачи в определенное время, и эти задачи называются заданиями cron. Задания cron в основном используются для автоматизации обслуживания или администрирования системы. Вы можете автоматизировать почти все с демоном cron. Например, вы можете настроить задание cron для резервного копирования вашего домашнего каталога, отправки предупреждений, установки программного обеспечения и многого другого.

Демон cron запускается автоматически из /etc/init.d при переходе на многопользовательский уровень запуска. Задания cron перечислены в файлах crontab и расположены в области буфера cron /var/spool/cron/crontabs. Cron ищет эти файлы и загружает их в память для выполнения. Другой файл, который читает cron, это /etc/crontab. В Debain и Ubuntu /etc/crontab ежедневно, ежечасно, еженедельно и ежемесячно выполняет программы, написанные в каталогах /etc/cron. daily, /etc/cron.hourly, /etc/cron.weekly и /etc/cron.monthly.

Crontab — это утилита, которая поддерживает файлы crontab для отдельных пользователей. Файл Crontab представляет собой простой текстовый файл со списком команд, которые выполняются в определенное время. Рекомендуется использовать команду crontab для доступа и обновления файлов crontab в /var/spool/cron/crontabs. Crontab означает «таблицу cron», которую демон cron использует для планирования заданий. У каждого пользователя есть файл crontab, который регулярно проверяется демоном cron, независимо от того, действительно ли пользователь вошел в систему или нет.

В панели управления Webdock легко управлять записями Crontab для любого пользователя на вашем сервере. Просмотрите экран сервера Cron Jobs для получения дополнительной информации.

Начало работы с Crontab

Чтобы отредактировать или создать файл crontab для текущего пользователя, введите следующую команду:

crontab -e 

Это откроет файл crontab в вашем любимом редакторе, расположенном в /var/spool/cron/crontabs/edward (edward — это наше имя пользователя в этом примере, оно может отличаться в вашем случае). Вывод приведенной выше команды будет (наш редактор здесь nano):

Чтобы указать задачу для запуска в определенное время, необходимо ввести следующие шесть полей, разделенных пробелом.

Поля и допустимые диапазоны Crontab

Поле

Описание

Допустимое значение

МИН

Поле минут

0-59

ЧАС

Поле часов

0-23

ДОМ

День месяца

1-31

ПН

Поле месяца

1-12

ДОУ

День недели

0-6

CMD

Команда

Любая команда должна быть выполнена

Любое из этих полей также можно задать с помощью подстановочного знака (*), который означает «с первого по последний». Например, чтобы запускать задание каждый час, поставьте * в поле часа. Вы также можете указать диапазон чисел во всех пяти полях, связанных с датой и временем. Диапазоны — это два числа, разделенные дефисом. Например, поле 5-8 в часах указывает выполнение в 5, 6, 7 и 8 часов.

Давайте создадим практический пример планирования с помощью crontab. У нас есть небольшой файл сценария, который будет пинговать www.google.com в 14:22 8 сентября независимо от дня недели. Мы создаем сценарий оболочки со следующим содержимым и помещаем его в /tmp/bill.sh.

nano /tmp/bill.sh 

Если у вас не установлен nano, сделайте это с помощью «sudo apt install nano -y»

Содержимое скрипта:

 #!/бин/баш
 СЕЙЧАС=`дата`
 echo "Задание cron выполнялось с $NOW" >> /tmp/jobresult

 

Сделать файл исполняемым:

chmod +x /tmp/bill.sh 

После того, как crontab запустит ваш скрипт, вы должны увидеть файл в /tmp/jobresult. Если вы просматриваете содержимое этого файла или следите за обновлениями этого файла с помощью «tail -f /tmp/jobresult», вы должны увидеть его обновление с новой строкой, указывающей, что задание Cron было запущено в определенное время.

Чтобы запустить этот скрипт в запланированные дату и время, мы вводим правильные поля в наш файл Crontab:

На скриншоте выше показано, что мы настроили наш crontab для запуска этого скрипта в 14:22 8 сентября. Сохраните и выйдите, и вы получите сообщение об обновлении Crontab.

Вот еще один пример: Следующая строка будет запускать наш скрипт каждый час, в начале часа, с 6 до 10 утра каждый день:

0 6-10 * * * /tmp/bill.sh 

Чтобы просто распечатать файл Crontab для вошедшего в систему пользователя на экране, вы можете использовать следующую команду:

crontab -l 

Это показывает, что в системе запланировано только одно задание cron. Вы можете запланировать более одного задания. просто добавив дополнительные строки в ваш файл Crontab. Чтобы удалить записи в таблице cron, просто отредактируйте свой Crontab, как и раньше, и удалите или закомментируйте строку

. По умолчанию crontab редактирует записи текущего вошедшего в систему пользователя. Если вы хотите отредактировать Crontab для другого пользователя, используйте следующую команду:

crontab -u имя пользователя -e 

Вы также можете использовать следующую команду для просмотра записей crontab другого пользователя:

crontab -u имя пользователя -l 

Ограничение доступа к crontab.

Вы можете ограничить доступ к команде crontab через файлы /etc/cron.d/cron.allow и /etc/cron.d/cron.deny. Оба этих файла не существуют по умолчанию в Ubuntu. Пользователям, упомянутым в файлах cron.allow и cron.deny, разрешен и запрещен доступ к команде crontab соответственно. В обоих файлах вы должны добавить имена пользователей, по одному пользователю в строке.

Например, если вы хотите разрешить пользователям root и edward доступ к команде crontab, создайте новый файл /etc/cron.d/cron.allow, как показано ниже:

nano /etc/cron.d/cron.allow 

Добавьте следующие строки:

корень
Эдвард
 

Сохраните и закройте файл, когда закончите.

Теперь только root и пользователь edward имеют доступ к команде crontab.

Журналы Cron

Журналы Cron — это важный способ проверить, выполняются ли задания cron вовремя или нет. Чтобы просмотреть журнал cron, выполните следующую команду:

кот /var/log/syslog | grep cron 

Вы также можете настроить файл cron.log, перейдя в файл /etc/rsyslog.d/50-default.conf и раскомментировав следующую строку.

nano /etc/rsyslog.d/50-default.conf 

Раскомментируйте следующую строку:

#cron.* /var/log/cron.log 

Синтаксис Crontab с примерами

В этом разделе мы покажем вам различные синтаксис crontab с примерами.

МИН

ЧАС

ДОМ

ПН

ДОУ

ОПИСАНИЕ

10

09

05

02

*

Выполнить задание 5 th Feb 09:10

*

*

*

*

*

Выполнять задание каждую минуту каждого часа каждого дня

10

14

*

*

*

Выполнять задание каждый день в 14:10

*/5

*

*

*

*

Выполнять задание каждые 5 минут каждого часа каждого дня

15

15

*

*

1-4

Выполнение задания в 15:15 с понедельника по пятницу

10

05

2

*

*

Выполнять задание каждый месяц 2 числа в 05:10

00

08,11

*

*

*

Выполнять задание каждый день в 08:00 и 11:00

00

10-18

*

*

*

Выполнять задание каждый день в каждый час с 10:00 до 18:00

00

*/2

*

*

*

Выполнять задание каждые 2 часа каждый день

00

11

*

марта,

декабря

*

Выполнение задания в марте и декабре в 11:00

@почасовой

Выполнять задание раз в час

@ежедневно

Выполнять задание один раз в день

@еженедельно

Выполнять задание раз в неделю

@ежемесячно

Выполнять задание раз в месяц

@ежегодно

Выполнять задание раз в год

при перезагрузке

Выполнить задание при загрузке системы

Заключение

В приведенном выше руководстве мы узнали, как планировать задачи с помощью crontab в Linux на нескольких примерах.