How-to-Create-and-Manage-Cron-Jobs-on-Linux

Как создавать и управлять заданиями с помощью Cron в Linux?

CronLinuxНовости IT

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

Задания Cron выполняются в фоновом режиме и постоянно проверяют файл /etc/crontab и каталоги /etc/cron.*/ и /var/spool/cron/. Файлы cron не должны редактироваться напрямую, и у каждого пользователя есть уникальный crontab.

Как же вы должны создавать и редактировать задания cron? С помощью команд crontab. Crontab — это метод, который используется для создания, редактирования, установки, удаления и вывода задач cron.

Команда для создания и редактирования заданий cron так же проста. И что еще круче, вам не нужно перезагружать cron после создания новых файлов или редактирования существующих.

$ crontab -e

 

 

Синтаксис Cron

Как и с любым языком программирования, работать с cron станет намного проще, когда вы поймёте его синтаксис. Существует всего два формата, которые вы должны знать:

A B C D E USERNAME /path/to/command arg1 arg2

 

И:

A B C D E USERNAME /root/backup.sh

 

Объяснение приведенного выше синтаксиса cron:

  • A: минутный диапазон: 0 — 59;
  • B: диапазон часов: 0 — 23;
  • C: диапазон дней: 0 — 31;
  • D: диапазон месяцев: 0 — 12;
  • E: дни недели: 0 — 7. Начиная с понедельника — 0 и заканчивая воскресеньем — 7;
  • USERNAME: это ваше имя пользователя;
  • /path/to/command — имя скрипта или команды, которую вы хотите запланировать.

 

 

Это не всё. Cron использует 3 символа оператора, которые позволяют вам указать несколько значений в поле:

  • Звездочка (*): указывает все возможные значения для поля;
  • Запятая (,): указывает список значений;
  • Тире (-): указывает диапазон значений;
  • Разделитель (/): указывает значение шага, делитель.

 

Теперь, когда вы знаете синтаксис и некоторые операторы Cron в Linux, приступим же к рассмотрению некоторых примеров cron.

 

 

Пример работы заданий Cron

Первым шагом к запуску команд cron является установка вашего crontab с помощью команды:

# crontab -e

 

 

Запуск /root/backup.sh в 3 часа ночи каждый день:

0 3 * * * /root/backup.sh

 

 

Запуск script.sh в 16:30 второго числа каждого месяца:

30 16 2 * * /path/to/script.sh

 

 

Запуск /scripts/phpscript.php в 22:00 в течение недели:

0 22 * * 1-5 /scripts/phpscript.php

 

 

Запуск perlscript.pl через 23 минуты после полуночи, 2 часа ночи и 4 часа ночи каждый день:

23 0-23/2 * * * /path/to/perlscript.pl

 

 

Запуск linuxcommand в 04:05 каждое воскресенье:

5 4 * * sun /path/to/linuxcommand

 

 

Настройки Cron

Список заданий Cron в Linux.

# crontab -l

 

 

Или же:

# crontab -u username -l

 

 

Удаление всех задания crontab
# crontab -r

 

 

Удаление заданий Cron для конкретного пользователя
# crontab -r -u username

 

Strings в Crontab

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

  • @hourly: запускать один раз в час, т.е. «0 * * * *»;
  • @midnight: запускать раз в день, то есть «0 0 * * *»;
  • @daily: так же, как @midnight;
  • @weekly: запускать раз в неделю, то есть «0 0 * * 0»;
  • @monthly: запускать раз в месяц, т. е. «0 0 1 * *»;
  • @annually: запускать один раз в год, то есть «0 0 1 1 *»;
  • @yearly: так же, как @annually;
  • @reboot: запускать один раз при каждом запуске.

 

Например, вот как сделать резервную копию вашей системы каждый день:

@daily /path/to/backup/script.sh

 

 

На данный момент вы знакомы со всем, что вам нужно для создания и управления системными задачами с помощью Cron. Теперь вы можете начать создавать и настраивать задачи, используя Cron. Удачи!

 

 

Спасибо за уделенное время на прочтение статьи о том, как создавать и управлять заданиями с помощью Cron в Linux!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Ciscoкурсы по кибербезопасности,  полный курс по кибербезопасности от Академии Ciscoкурсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).

Курсы Cisco и Linux с трудоустройством!

Спешите подать заявку! Осталось пару мест. Группы стартуют 22 июля, а следующая 19 августа, 23 сентября, 21 октября, 25 ноября, 16 декабря, 20 января, 24 февраля.
Что Вы получите?
  • Поможем стать экспертом в сетевом администрировании и получить международные сертификаты Cisco CCNA Routing & Switching или Linux LPI.
  • Предлагаем проверенную программу и учебник экспертов из Cisco Networking Academy и Linux Professional Institute, сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и сделать карьеру. 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проводим вечерние онлайн-лекции на нашей платформе или обучайтесь очно на базе Киевского офиса.
  • Спросим у вас об удобном времени для практик и подстроимся: понимаем, что времени учиться мало.
  • Если хотите индивидуальный график — обсудим и осуществим.
  • Выставим четкие дедлайны для самоорганизации. Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
А еще поможем Вам:
  • отредактировать резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроим на работу в Cisco по программе Cisco Incubator, New Graduate и Experienced. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco CCNA Routing & Switching и Linux LPI, подайте заявку или получите бесплатную консультацию.
CronLinuxНовости IT

Больше похожих постов

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

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

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения

Самое читаемое
Меню