cron

cron — це служба в Ubuntu (і загалом у Unix-подібних системах), яка виконує команди або скрипти у фоновому режимі за розкладом, що задається у спеціальних файлах — crontab.


🔧 Основи cron

Служба cron працює з декількома джерелами завдань:

  1. Особисті таблиці завдань користувачівcrontab для кожного користувача (crontab -e).

  2. Системні файли — в каталогах /etc/cron.* (cron.daily, cron.hourly, ...).

  3. Файли в /etc/crontab і /etc/cron.d/ — системні розклади, де можна вказувати користувача для виконання.


📜 Формат запису в crontab

* * * * * команда
│ │ │ │ │
│ │ │ │ └─ день тижня (0-7) — 0 і 7 = неділя
│ │ │ └─── місяць (1-12)
│ │ └───── день місяця (1-31)
│ └─────── година (0-23)
└───────── хвилина (0-59)

Наприклад:

30 2 * * * /usr/local/bin/backup.sh

Виконуватиме backup.sh щодня о 2:30 ночі.


📌 Перегляд та редагування crontab

Переглянути завдання:

Редагувати поточний crontab:

Перший запуск може спитати, який редактор використовувати (зазвичай обирають nano або vim).


✅ Приклад завдань

1. Запуск скрипта щогодини:

2. Відправка пінгу раз на 5 хвилин:


📁 /etc/cron.* — інший підхід

Можеш просто покласти скрипт у відповідний каталог:

  • /etc/cron.hourly/ — виконується щогодини

  • /etc/cron.daily/ — щодня

  • /etc/cron.weekly/ — щотижня

  • /etc/cron.monthly/ — щомісяця

Скрипт має бути виконуваним (chmod +x) і мати shebang (#!/bin/bash на початку).


🧪 Перевірити роботу cron

  1. Додай завдання з перенаправленням у лог:

  2. Через кілька хвилин перевір:


🛠 Логи cron

У Ubuntu 24.04 за замовчуванням логи можна дивитись тут:

Або просто:


Last updated