Ця стаття допоможе налаштувати планувальник завдань таким чином, щоб він створював резервні копії баз даних та даних Вашого VPS для сайтів. Розглянемо приклад запису:
Cron
В Linux періодичним виконанням керує демон cron. Він запускається на этапі початкового завантаження системи і працює у фоновому режимі до тих пір, доки система не буде вимкнена. Cron читає файли конфігурації, які містять списки команд та розклад їх викликання. Команди зазвичай опрацьовує інтерпретатор sh (системна консоль Linux), тому майже усі команди, які можна виконати в консолі вручну, можна перепоручити демону cron.
Файлами конфігурації демона керує команда crontab, тому їх називають crontab-файлами. У системі є безліч crontab-файлів, однак ми будемо правити /etc/crontab. Зверніть увагу, що у дистрибутивах CentOS и Fedora демон cron перейменований у crond.
Кожний рядок crontab-файла, який не є коментарем, містить шість чи сім полів і складає одну команду. Стандартний рядок має вигляд:
- хвилина година день місяць день_тижня [ім’я_користувача] команда
Поле ім’я_користувача визначає користувача, від імені якого буде виконуватися команда. У полях хвилина година день місяць день_тижня міститься інформація про час запуску команди. Опис даних в полях наведений у таблиці нижче:
Поле | Опис | Діапазон |
---|---|---|
хвилина | Хвилина у годині | Від 0 до 59 |
година | Година у добі | Від 0 до 23 |
день | День місяця | Від 1 до 31 |
місяць | Місяць року | Від 1 до 12 |
день_тижня | День тижня | Від 0 до 6 (0 — неділя) |
Кожне з полів може містити:
- зірочку, яка означає будь яку цифру;
- ціле число;
- два розділених дефісом цілих числа, які задають диапазон значень;
- цілі числа та диапазони, розділені комами (час відповідає будь-якому зі значень).
Наприклад, послідовність 0,3,6,9,12,15,18 можна записати як 0-18/3. Рядок 45 10 * * 1-5 означає “В 10 годин 45 хвилин, з понеділка по п’ятницю”.
(!) Ніколи не ставте зірочку у перше поле, тому що тоді команда буде виконуватися кожну хвилину, що призведе до чрезмірного навантаження на ВПС.
З полями день_тижня і день пов’язана двозначність, яку треба враховувати. День можна розглядати як день тижня, а також як число місяця. Якщо вказані обидва поля, день має відповідати одній з цих умов, щоб пройти відбір та запустити виконання завдання. Наприклад, специфікація 0,30 * 13 * 5 означає “кожні півгодини по п’ятницям і кожні півгодини тринадцятого числа місяця”, але не “кожні півгодини у п’ятницю 13-го”.
Інструкції з налаштування cron для створення бекапів у той чи інший способів ви можете знайти за посиланнями нижче.