2.11.2. Добавление задачи cron

Важные моменты:

  • Если в задаче указан просто путь к файлу PHP, автоматически используются настройки PHP сайта, в каталоге которого он размещён, если дополнительно указан путь к интерпретатору PHP — настройки PHP не используются. Например:
    • Задача указана как /home/example/example.com/sub/script.php — скрипт script.php запускается с настройками PHP сайта sub.example.com.
    • Задача указана как /usr/local/php72/bin/php /home/example/example.com/sub/script.php — скрипт script.php запускается без использования настроек PHP сайта sub.example.com.
  • Поскольку cron не использует переменную PATH, нужно указывать полные пути к файлам не только при добавлении задачи, но и в самих запускаемых скриптах.
  • Если задача срабатывает исключительно при открытии страницы в браузере, то следует запускать ее посредством использования wget.
  • Длина задачи не должна превышать 255 символов. Для запуска длинных команд помещайте их Bash-скрипт и запускайте через cron его.
  1. Откройте раздел «Расписание задач (Cron)».
  2. Вверху страницы нажмите «Добавить задачу».
  3. Укажите необходимые настройки и нажмите «Сохранить»:
    • «Задача» — укажите команду, которую нужно выполнять по расписанию. Рекомендуется предварительно запустить её вручную, подключившись по SSH, чтобы убедиться в том, что она работает именно так, как задумано.
    • «Одновременный запуск» — выберите поведение для ситуации, когда запущенный ранее процесс не успевает завершиться до запуска нового.
    • «Время запуска» — укажите время, когда должна запускаться задача. Воспользуйтесь одной из готовых предустановок или укажите свой вариант. Примечание В подборе и проверке своего варианта поможет «Помощь в настройке», которая открывает наш калькулятор cron, либо используйте сторонние сервисы, вроде crontab guru.
    • «Комментарий» — если нужно, укажите произвольный комментарий к задаче. Используется для удобства. Комментарии могут быть полезны при большом количестве добавленных задач.
    • «Отправлять отчет о на email» — если хотите получать отчёты о выполнении задач cron на почту, укажите почтовый ящик, на который их нужно отправлять, если отчёты не нужны — оставьте поле пустым.
  4. Подождите примерно 30-60 минут, пока изменения вступят в силу.

Для указания времени запуска Cron задач используется определенный синтаксис для каждого значения указываемого времени. Элементы синтаксиса можно комбинировать между собой, разделяя их запятой, например: */30, 1-10, 53 — запуск задачи будет производиться в: 00, 01 и все числа до 10, 30, 53.

  • */X — запуск задачи во время, кратное указанному в X. Например указание */20 для секунд и минут будет запускать задачу в такие значения: 00, 20, 40.
  • 1,2,3 — перечисление нужных значений через запятую.
  • 1-10 — указание интервала нужных значений, в примере будут использованы все числа от 1 до 10.
  • * — любое значение.

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

  • «Время запуска» — расписание запуска задачи в стандартном формате cron.
  • «Следующий запуск» — дата и время следующего срабатывания задачи по расписанию. Внимание! Запуск в указанное время может не состояться, если с момента добавления или изменения задачи прошло менее 30-60 минут.
  • «Задача» — полный текст команды, комментарий к задаче и расписание запуска в человекопонятном виде.
  • «Отчёт» — адрес почты, куда отправляются отчёты о выполнении задачи, или прочерк.
  • «Управление» — кнопки управления задачей:
    • «Приостановить выполнение задачи» или «Восстановить выполнение задачи» — остановить или возобновить запуск задачи по расписанию.
    • «Тестовый запуск задачи» — запуск задачи вручную. Можно использовать для проверки работы команды или её досрочного запуска до наступления времени из расписания. После запуска в окне отображается содержимое стандартного вывода — текст, выводимый командой в процессе её выполнения, или информация об ошибках.
    • «Редактировать» — изменение настроек задачи.
    • «Удалить» — удаление задачи.
В видео показана старая форма добавления задачи, но общие принципы работы cron остались неизменными.
Содержание