Crontab у Linux: ПРИКЛАДИ планування роботи

Зміст:

Anonim

Що таке кронтаб?

Крон названий на честь грецького слова "Хронос", яке вживається час. Це системний процес, який автоматично виконує завдання відповідно до конкретного розкладу. Це набір команд, які використовуються для запуску звичайних завдань планування. Crontab розшифровується як "cron table". Це дозволяє використовувати планувальник завдань, який відомий як cron для виконання завдань.

Crontab - це також назва програми, яка використовується для редагування цього розкладу. Він керується файлом crontab, файлом конфігурації, який вказує команди оболонки для періодичного запуску для певного розкладу.

У цьому посібнику з операційної системи ви дізнаєтесь:

  • Що таке кронтаб?
  • Навіщо використовувати CRONJOB?
  • Як використовувати cron в Linux?
  • Формат Linux Crontab
  • Як додати / змінити Crontab
  • Як перерахувати Crontab
  • Важливі приклади Crontab

Навіщо використовувати Cronjobs?

Ось причини використання Cronjobs у Linux:

  • Допомагає ОС робити планове резервне копіювання файлів журналів або бази даних.
  • Видалити старі файли журналів
  • Архівуйте та очищайте таблиці баз даних
  • Надішліть будь-яке сповіщення електронною поштою, наприклад бюлетень, електронний лист із закінченням терміну дії пароля
  • Регулярне очищення кешованих даних
  • Crontab - ідеальний варіант для автоматизації завдань Unix.
  • Застосовується для автоматизації обслуговування системи

Як використовувати cron в Linux?

У системному пакеті Linux є корисний планувальник завдань з назвою crontab. Crontab популярний, оскільки його можна запланувати для запуску автоматизованого процесу як root. Тому наявність автоматизованого процесу, що виконується як root, полегшує системні зміни. Вам просто потрібно змінити завдання, а потім почекати, поки завдання не буде ініційоване повторно.

Формат Linux Crontab

Crontab Linux має шість полів. Перші п’ять полів визначають час і дату виконання, а 6-те поле використовується для виконання команди.

Синтаксис Crontab:

[Minute] [hour][Day_of_the_Month][Month_of_the_Year][Day_of_the_Week][command]

  • Astrics (*): Використовуйте для відповідності
  • Визначити діапазон: Дозволяє визначити діапазон за допомогою дефісу, наприклад 1-10 або 30-40 або січня, понеділка.
  • Визначити кілька діапазонів: Дозволяє визначати різні діапазони з командою, розділеною на зразок apr-jun, oct-dec.

Як додати / змінити Crontab

Користувач може редагувати свої завдання crontab за допомогою наступної команди crontab:

$ crontab -u -e

Наведена вище команда відкриє персональну конфігурацію crontab вашої комп'ютерної системи, яку можна редагувати за допомогою текстового редактора за замовчуванням.

Немає необхідності перезапускати ваш crontab, оскільки він автоматично збиратиме ваші зміни, коли ви використовуєте наступну команду.

$ crontab -l

Щоб видалити завдання crontab, використовуйте таку команду.

$ crontab -r

Щоб додати або оновити завдання в crontab, використовуйте подану нижче команду.

crontab -e

Команда для редагування crontab іншого користувача

crontab -u username -e

Як перерахувати Crontab

Команда для перегляду записів crontab поточного користувача

crontab -l

Команда для перегляду записів crontab певного користувача:

crontab -u username -l

Важливі приклади Crontab

Ось кілька важливих прикладів Crontab

Опис Команда
Команда Cron для виконання різних завдань планування. Нижче дана команда виконується о 7:00 та 17:00 щодня.
0 7,17 * * * /scripts/script.sh
Команда виконати cron через кожні 5 хвилин.
*/5* * * * * /scripts/script.sh
Команда планувальника Cron допомагає виконувати завдання кожного понеділка о 5 ранку. Ця команда корисна для щотижневих завдань, таких як очищення системи.
0 5 * * mon /scripts/script.sh
Команда запустіть ваш сценарій з інтервалом у 3 хвилини.
*/3 * * * * /scripts/monitor.sh
Команда для планування cron, до якого виконується на певний місяць. Ця команда для запуску завдань, що виконуються у лютому, червні та вересні місяців. Іноді нам потрібно запланувати завдання для виконання вибраного щомісячного завдання.
* * * feb,jun,sep * /script/script.sh
Команда для виконання у вибрані дні. Цей приклад працюватиме щопонеділка та щосереди о 17:00.
0 17 * * mon,wed /script/script.sh
Ця команда дозволяє cron виконувати в першу суботу кожного місяця.
0 2 * * sat [ $(date +%d) -le 06 ] && /script/script.sh
Команда для запуску сценарію на 6 годин, щоб його можна було налаштувати, як показано нижче.
0 */6 * * * /scripts/script.sh
Ця команда планує виконати завдання двічі на понеділок та вівторок. Для цього використовуйте наступні налаштування.
0 4,17 * * mon,tue /scripts/script.sh
Команда планує виконання cron через кожні 15 секунд.
* * * * * /scripts/script.sh* * * * * sleep 15; /scripts/script.sh
Команда планувати завдання на рік. @yearly мітка часу = = "0 0 5 1 *". Це виконує завдання на п’ятій хвилині кожного року. Ви можете використовувати його для надсилання привітань з новим роком.
@yearly /scripts/script.sh
Командні завдання, які слід виконувати щомісяця. @monthly timestamp схожа на "0 0 1 * *". Цей вираз команди дозволяє виконати завдання в першу хвилину місяця.
@monthly /scripts/script.sh
Команда для виконання кількох завдань за допомогою одного cron.
* * * * * /scripts/script.sh; /scripts/scrit2.sh
Команда для планування виконання завдань щотижня. Мітка часу @weekly схожа на "0 0 4 * сонце". Це використовується для виконання щотижневих завдань, таких як очищення системи тощо.
@weekly /bin/script.sh
Завдання планується виконувати щодня. Мітка часу @daily схожа на "0 2 * * *". Він виконує завдання на другій хвилині кожного дня.
@daily /scripts/script.sh
Дозволяє виконувати завдання щогодини. Мітка часу @hourly схожа на "0 * * * *". Ця команда виконує завдання в першу хвилину кожної години.
@hourly /scripts/script.sh
Дозволяє виконувати завдання під час перезавантаження системи. Вираз @reboot корисний для тих завдань, які система хоче запустити під час запуску системи. Це корисно для автоматичного запуску фону завдань.
@reboot /scripts/script.sh

Короткий зміст:

  • Крон названий на честь грецького слова "Хронос", яке вживається час.
  • Cronjobs допомагають ОС робити заплановане резервне копіювання файлів журналів або бази даних.
  • Системний пакет Linux має корисний планувальник завдань на ім'я crontab, який можна запланувати для запуску автоматизованого процесу як root.
  • Crontab Linux має шість полів. Перші п’ять полів визначають час і дату виконання, а 6-те поле використовується для виконання команди.