crontab

Как использовать Cron в Linux

Как использовать Cron в Linux
Cron - это встроенный автоматический планировщик для операционной системы Linux, который отвечает за выполнение команд или сценариев, которые добавляются в файл crontab в указанное время. Задачи, которые вы хотите запланировать на более позднее время, можно легко заставить работать, указав задачи как задания crontab в файле crontab. Эти задачи обычно связаны с обслуживанием и обновлением системы. Однако задания crontab также можно использовать для запуска сценариев bash в запланированное время. Когда наступает указанное время, демон Cron выполняет задания crontab, перечисленные в файле crontab для этого конкретного времени.

Всякий раз, когда вы выполняете какую-либо задачу, может быть только два возможных результата: i.е., либо задача будет выполнена успешно, либо ваша система выдаст ошибки. В любом случае выходные данные задания crontab всегда отправляются по электронной почте пользователю в его данной учетной записи, из которого пользователь может проверить, было ли выполнено ранее созданное задание. Если нет, то пользователь может легко выяснить причину этого. В сегодняшней статье мы постараемся изучить базовый метод использования Cron в Linux.

Примечание. Метод, продемонстрированный в этой статье, реализован в Linux Mint 20.

Использование Cron в Linux

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

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

$ crontab -e

После запуска этой команды в терминале ваша система явно укажет, существует ли уже файл crontab. В нашем случае его не было, как вы можете видеть на изображении ниже. Затем вам будет предложено выбрать редактор по вашему выбору из данного списка, чтобы открыть вновь созданный файл. Здесь по умолчанию указан редактор nano, так как он самый простой в использовании. Мы выбрали вариант 1 из трех представленных вариантов, а затем нажали клавишу Enter, чтобы подтвердить наш выбор.


После выбора желаемого текстового редактора ваш файл crontab откроется с выбранным текстовым редактором, и вы сможете редактировать файл. Поскольку мы выбрали редактор nano, наш файл crontab был открыт с помощью редактора nano. Вы можете просмотреть комментарии, которые присутствуют в этом файле, поскольку они содержат инструкции по редактированию этого файла и добавлению в него заданий crontab.

Для пояснения мы поделимся с вами созданием задания crontab для планирования резервного копирования всех учетных записей пользователей в вашей системе. Это резервное копирование произойдет через 1 час.м. каждую неделю. Чтобы создать такое задание crontab, введите в файл crontab следующую строку без символа «#»:

0 1 * * 1 tar -zcf / var / backups / home.tgz / home /

Здесь пять параметров перед выполняемой задачей указывают минуты (0-59), часы (0-23), день месяца (1-31), месяц (1-12) и день недели ( 0-7) соответственно. Вы можете указать любое целое число в пределах диапазонов, предусмотренных для каждого из этих параметров, или вы можете поставить звездочку вместо целочисленного значения, чтобы указать любой значение в заданном диапазоне. Задание crontab, которое мы хотели создать, показано на изображении ниже. Сделав эту запись, вы можете просто сохранить файл и выйти из редактора, нажав Ctrl + X.

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

Таким образом, используя задания crontab, вы можете запланировать резервное копирование, обновление или любую другую задачу по вашему выбору, например, запуск сценария bash в указанное время. Вы также можете просмотреть все задания crontab, которые вы добавили в файл crontab через терминал, выполнив следующую команду:

$ crontab -l

Выполнение указанной выше команды выведет список всех заданий crontab, присутствующих в файле crontab. В этом случае, поскольку мы добавили только одно задание crontab в наш файл crontab, в нашем терминале будет указано только это задание crontab, как показано на изображении ниже:

Заключение

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

SuperTuxKart для Linux
SuperTuxKart - отличная игра, созданная для того, чтобы бесплатно познакомить вас с Mario Kart в вашей системе Linux. Играть в нее довольно сложно и в...
Учебник Battle for Wesnoth
Битва за Веснот - одна из самых популярных стратегических игр с открытым исходным кодом, в которую вы можете играть сейчас. Эта игра не только очень д...
0 А.D. Руководство
Из множества существующих стратегических игр 0 A.D. удается выделиться как всеобъемлющее название и очень глубокая тактическая игра, несмотря на то, ч...