Как настроить запуск скрипта по расписанию в Linux

«Как настроить запуск скрипта по расписанию в Linux» — вопрос из категории Linux, который задают на 23% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Для автоматизации задач в Linux я использую cron — стандартный планировщик заданий.

Основные шаги:

  1. Отредактировать файл crontab для пользователя:
    crontab -e
  2. Добавить строку, определяющую расписание и команду. Формат:
    # минута час день_месяца месяц день_недели команда
    # Запускать скрипт резервного копирования каждый день в 2:30 ночи
    30 2 * * * /opt/scripts/backup.sh >> /var/log/backup.log 2>&1

Практические примеры расписания:

  • 0 * * * * – в начале каждого часа.
  • */10 * * * * – каждые 10 минут.
  • 0 18 * * 1-5 – в 18:00 с понедельника по пятницу.

Для системных задач можно редактировать /etc/crontab или помещать файлы конфигурации в /etc/cron.d/.

Проверка и отладка:

  • Просмотреть задания текущего пользователя: crontab -l.
  • Логи cron обычно находятся в /var/log/syslog или /var/log/cron. Всегда перенаправляю вывод скриптов в лог-файлы для отслеживания выполнения.