Как запланировать работу Crontab на каждый час

How Schedule Crontab Job



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

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







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



Метод планирования работы Crontab на каждый час

Чтобы запланировать выполнение задания crontab один раз в час в Linux Mint 20, выполните следующие действия.



Шаг 1. Создайте задачу для планирования в качестве задания Crontab

Сначала мы определим задачу, которую хотим запускать как задание Crontab один раз в час. Эта задача может быть чем угодно, от создания резервной копии до запуска простого сценария bash. В этом примере мы создадим сценарий bash, который будет запускаться каждый час. Мы создадим файл bash в нашем домашнем каталоге и добавим сценарий для печати случайного сообщения в терминале в этом файле bash, как показано на следующем изображении. Затем мы просто сохраним этот файл и закроем его. Мы определим задание так, чтобы этот сценарий bash выполнялся каждый час.





Шаг 2: Запустите службу Crontab

Как вы можете видеть на скриншоте ниже, мы запустили новое окно терминала перед запуском новой службы crontab.

Перед добавлением этого скрипта в качестве задания в файл Crontab нам сначала нужно запустить службу Crontab, что можно сделать, выполнив следующую команду:

$судоsystemctl запустить cron


Выполнение этой команды немедленно запустит службу Crontab без отображения каких-либо выходных данных на терминале.



Шаг 3. Проверьте статус службы Crontab

Хотя приведенная выше команда автоматически запускает службу Crontab, вы можете проверить службу Crontab, прежде чем продолжить, проверив ее статус с помощью следующей команды:

$судоsystemctl status cron


Если служба Crontab успешно запустилась, то выполнение указанной выше команды покажет вам статус «Активен (запущен)», как показано на изображении ниже. Этот статус подтверждает, что служба Crontab работает правильно.

Шаг 4: запустите файл Crontab

Убедившись, что служба Crontab работает правильно, вы можете открыть файл Crontab, чтобы добавить к нему нужное задание, которое будет планироваться каждый час. Файл Crontab можно открыть, выполнив в терминале следующую команду:

$crontab -e


Эта команда откроет файл Crontab в терминале.

Шаг 5: Добавьте задачу в файл Crontab, которая будет выполняться каждый час

После открытия файла Crontab вам нужно будет нажать Ctrl + O, чтобы отредактировать его. Затем добавьте строку, выделенную на следующем изображении, в ваш файл Crontab. В этой строке параметр 0 * * * * указывает демону Cron выполнять задание один раз в час. В этой строке мы написали путь к нашему файлу bash, чтобы демон Cron мог легко получить доступ к файлу bash при каждом выполнении задания. Таким же образом вы также можете добавить любую другую команду, которую хотите выполнять каждый час, вместо указания пути к файлу. После добавления этой строки вы можете сохранить этот файл и закрыть его.

Как только вы закроете этот файл, демон Cron автоматически установит новый Crontab, как показано на изображении ниже. Таким образом, вам не нужно явно указывать своей системе, что вы добавили новое задание Crontab в файл Crontab, потому что демон Cron сам выполняет это задание всякий раз, когда вы вносите какие-либо изменения в файл. После установки нового файла Crontab задание будет выполняться каждый час.

Заключение

В этом руководстве вы узнали простой метод планирования задания Crontab каждый час. В примере, обсуждаемом в этой статье, мы создали задание Crontab для файла bash, который будет выполняться каждый час. Вы можете создать любую другую задачу, которая будет выполняться каждый час как задание Crontab, следуя той же процедуре. Более того, если вы хотите, чтобы ваше задание Crontab выполнялось в определенное время в течение часа, например, в 10:30, затем в 11:30 и так далее, вы можете сделать это, изменив поле 0 минут на 30. Таким образом, вы можете больше поиграть с планированием заданий с помощью демона Cron.