crontab

Как настроить задания Cron в Linux

Как настроить задания Cron в Linux
Автоматизация и планирование повторяющихся задач на настольных компьютерах и серверах повышает производительность и сокращает ручное вмешательство и мониторинг. Для Linux доступно множество таких инструментов, и одним из наиболее широко используемых среди них является «cron».

В этой статье будет объяснено планирование задач и запуск скриптов через регулярные промежутки времени с использованием заданий cron.

Что такое Cron?

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

Пресеты Cron

Cron в Ubuntu поставляется с набором предопределенных планировщиков. Вы можете проверить их, выполнив команду ниже:

$ ls / etc / cron.*

Обычно это папки «/ etc / cron.ежечасно »,« / etc / cron.ежедневно »,« / etc / cron.ежемесячно »и« / etc / cron.еженедельно ».

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

Обратите внимание, что cron по умолчанию использует оболочку «/ bin / sh». Если вы хотите использовать «/ bin / bash» в качестве оболочки в сценариях cron, вы должны использовать «!# / bin / bash »в верхней части файла сценария или определите оболочку как переменную« SHELL = / bin / bash »в первой строке запланированного сценария bash. Переопределение переменной среды «SHELL» также работает для редактора crontab, как описано ниже.

Не все переменные системной среды могут быть доступны для заданий cron. Поэтому обычно рекомендуется вручную определять важные переменные среды в сценарии, запланированном cron.

Crontab

Crontab позволяет вам определять свои собственные запланированные задачи. Вы можете использовать его для настройки расписаний cron, отличных от четырех стандартных предустановок cron, описанных выше.

Чтобы установить запланированную задачу в crontab, сначала запустите редактор crontab, используя следующую команду:

$ crontab -e

Теперь в конец файла можно добавить запись в следующем формате:

минута час день месяц будний день / полный / путь / к / скрипту.ш

Где:

Приведенная ниже запись crontab сделает снимок экрана вашего рабочего стола и сохранит его в вашем домашнем каталоге один раз в 15:13 2 марта плюс каждый вторник марта в 15:13.

13 15 2 3 2 мошонка

Чтобы вывести список всех записей crontab, используйте команду ниже:

$ crontab -l

Больше примеров

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

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

Запись crontab ниже будет делать снимок экрана один раз при каждой перезагрузке:

@reboot scrot

Вы можете заменить «@reboot» любыми другими специальными строками, упомянутыми выше.

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

* * * * * Мошонка

Каждый час:

0 * * * * мошонка

Ежедневно в 18:00:

0 18 * * * мошонка

Каждый месяц 6 числа в 18:00:

0 18 6 * * мошонка

Используйте «/» для запуска сценария с фиксированным периодическим интервалом в 30 минут (выполняется каждые 30 минут):

* / 30 * * * * мошонка

Вы можете использовать переменные, разделенные запятыми, чтобы определить повторное выполнение скрипта через равные промежутки времени. В приведенном ниже примере снимок экрана вашего рабочего стола будет делаться каждую 1-ю, 4-ю и 5-ю минуту нового часа.

1,4,5 * * * * мошонка

Проверка записей Crontab

Определение записей crontab может быть сложным, но отладка их или проверка того, работают ли они с правильными временными метками, еще сложнее. Один из вариантов - использовать виртуальную машину и регистрировать временные метки скрипта, периодически выполняемого в задании cron, включив что-то вроде команды «date» и перенаправив вывод в текстовый файл. Однако лучшим решением является использование одной из многочисленных онлайн-сервисов тестирования заданий cron, доступных в Интернете. Я рекомендую предоставить доступ к сайту cron tester здесь попытка.

Заключение

Запуск заданий cron - отличный способ автоматизировать повторяющиеся задачи, особенно на серверах. Инструмент чрезвычайно мощный и настраиваемый. Однако важно убедиться, что ваше определение планировщика работает правильно, особенно если есть критически важные задачи.

Переназначьте кнопки мыши по-разному для разных программ с помощью X-Mouse Button Control
Может быть, вам нужен инструмент, который мог бы изменять управление вашей мышью с каждым приложением, которое вы используете. В этом случае вы можете...
Обзор беспроводной мыши Microsoft Sculpt Touch
Я недавно прочитал о Microsoft Sculpt Touch беспроводная мышь и решил ее купить. Побывав некоторое время, я решил поделиться своим опытом с ним. Эта б...
Экранный трекпад и указатель мыши AppyMouse для планшетов с Windows
Пользователи планшетов часто пропускают указатель мыши, особенно когда они привыкли пользоваться ноутбуками. Смартфоны и планшеты с сенсорным экраном ...