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

Добавление команды в Cron из командной строки

Чтобы добавить задание Cron из терминала можно использовать утилиту crontab.

Чтобы создать новое задание введите следующую команду:

crontab -e

Все запланированные действия будут выполнятся от текущего пользователя, если вы хотите указать другого пользователя используйте опцию -u:

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

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

Каждая задача формируется следующим образом:

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

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

Вот самые распространенные примеры задач:

  • * * * * * /home/dan/bin/script.sh: запускать каждую минуту
  • 0 * * * * /home/dan/bin/script.sh: запускать каждый час.
  • 0 0 * * * /home/dan/bin/script.sh: запускать каждый день в 12 АМ.
  • 0 9,18 * * * /home/dan/bin/script.sh: запускать в 9AM и 6PM дважды в день.
  • 0 9-18 * * * /home/dan/bin/script.sh: запускать каждый час от 9AM до 6PM.
  • 0 9-18 * * 1-5 /home/dan/bin/script.sh: запускать каждый час от 9AM до 6PM каждый месяц каждую неделю по ПН, ВТ, СР, ЧТ, ПТ.
  • */10 * * * * /home/dan/bin/script.sh: запускать каждые 10 минут.

Когда завершите настройку, нажмите Ctrl+O для сохранения и Ctrl+X для закрытия редактора. Теперь новые задания Cron будут добавлены
и активированы.

Чтобы увидеть список активных заданий наберите:

crontab -l

Добавление задания Cron в GUI

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

В Gnome это GNOME Schedule (пакет gnome-schedule):

А для KDE есть Task Scheduler (пакет kcron)

Источник: losst.ru