Как правильно добавить строку в crontab

cron — это системный планировщик задач в Linux. Он позволяет запускать команды по расписанию, например: каждые 15 минут отправлять запрос на сайт или запускать скрипт.

В статье разберём два способа как правильно добавить новую строку в crontab, на примере периодического запуска cron в Drupal проекте.

Простой и очевидный способ: crontab -e

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

После запуска команда откроет текущий крон-файл пользователя в редакторе (обычно nano или vim). В этом файле можно добавить строку, например:

Что значит эта строка:

  • */15 — каждые 15 минут
  • * * * — каждый час, день и месяц
  • /usr/bin/curl — путь к исполняемому файлу
  • -s — тихий режим (silent)
  • URL — вызываемый адрес cron-обработчика на сайте

После сохранения cron автоматически начнёт выполнять задание по расписанию.

Добавление строки через микроскрипт (без ручного редактирования)

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

Пояснение:

  • crontab -l — выводит текущие задания cron
  • 2>/dev/null — подавляет ошибку, если cron-файл пуст
  • echo "..." — ваша новая строка
  • Вся конструкция в скобках () собирает старые + новые задания
  • | crontab - — передаёт объединённый список обратно в cron

Такой способ безопасен: он сохраняет все существующие задачи и просто добавляет новую.

Дополнение: с heredoc (если строка многострочная)

Можно также использовать heredoc-синтаксис:

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

Заключение

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

Как последний штрих — не забывайте проверять:

чтобы убедиться, что всё добавилось корректно.

Мало букафф? Читайте есчо !

Ошибка запуска Cron в Drupal 7

Апрель 16, 2020 г.

Если запуск Cron в Drupal 7 постоянно выдаёт такую ошибку - "Cron run failed.", как исправить ситуацию? Подобная статья у меня уже была, но посвященная аналогичной проблеме в Drupal 6. Решение точно такое же - нужно удалить из базы данных ...

Читать

Идем на поклон к Хроносу или самодельный cron на javascript

Март 13, 2010 г.

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

Читать

Attempting to re-run cron while it is already running.

Июнь 3, 2025 г.

Попытка запустить cron параллельно с запущенным кроном не увенчается успехом, так как Drupal использует блокировку. Но иногда, из-за ошибок во время исполнения, блокировка не снимается. Что делать, если блокировка не была снята штатно? На самом ...

Читать

Ошибка запуска Cron

Сентябрь 23, 2016 г.

Что делать, если запуск Cron в Drupal 6 постоянно выдаёт такую ошибку -  "Cron run failed."? Смотрим, как возникает данная ситуация в библиотеке /includes/common.inc . Функция drupal_cron_run() использует флаг для блокировки одновременного запуска: [crayon-6901da4584a85054589362/] ...

Читать
 

Комментарии к «Как правильно добавить строку в crontab»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: