Выполнение заданий через CRON в Linux

CRON – это планировщик заданий в Linux, который запускает выполнение скриптов по заданному расписанию.

В операционной системе Cent OS (Linux) файл, отвечающий за выполнение заданий, лежит по такому пути: /etc/crontab.

Для его редактирования, заходим на сервер по протоколу ssh. Затем вводим консольную команду:

Исполняемые файлы имеют расширение sh. В начале файла принято записывать:

Как просмотреть логи в CRON

Если добавленное в CRON задание не выполняется, можно проверить ошибки в логах.

Возьмем скрипт из примера резервного копирования данных на Яндекс Диск.

Скрипт лежит в папке my_scripts и называется backup_webdav_day.sh. Для просмотра логов CRON

По умолчанию он имеет такой вид:

Команда означает, что скрипт будет запускаться в 2 часа каждую ночь.

Предположим, что выполнение команды не работает, нам нужно понять, почему так происходит. Изменяем в файле backup_webdav_day.sh данные скрипта, чтобы тот записывал ход выполнения работы в специальный лог файл, который будет создан в той же директории. И меняем время на ближайшее, допустим сейчас 16.00 и мы хотим узнать, будет ли работать скрипт. Тогда делаем его выполнение через 5 минут.

Ждём пока не наступит 16.05, а затем смотрим что показывает файл backup_webdav_day.log.

CRON отказано в доступе / Permission denied

Если скрипт не будет выполняться, то в логах файла вы увидите соответствующую ошибку. Например, в ошибке может находиться такая информация:

или

Это означает, что в операционной системе Linux, нет прав доступа к файлу. В этом случае файлу backup_webdav_day.sh присваиваем права доступа на исполнение – chmod +x:

После этого данная ошибка должна исчезнуть.

Добавить комментарий

Напишите свой комментарий, если вам есть что добавить/поправить/спросить по теме текущей статьи: "Выполнение заданий через CRON в Linux".

Ваш e-mail не будет опубликован. Обязательные поля помечены *