Cron: Основни принципи и функционалност за планиране на задачи
Cron е стандартна система за планиране на задачи в UNIX-базирани операционни системи. Тя ви позволява да насрочите изпълнението на задачата за определяне на интервали от време или на конкретни дати и часове. Cron се използва широко за автоматизиране на рутинни или системни задачи, като резервно копиране на данни, обновяване на софтуер, създаване на отчети и други.
Основни принципи и функционалности на Cron
┌───────────── секунди (0 - 59) | ┌─────────── минута (0 - 59) | | ┌──────── час (0 - 23) | | | ┌────── ден от месеца (1 - 31) | | | | ┌──── месец (1 - 12) ИЛИ януари, февруари, март, април ... | | | | | ┌── ден от седмицата (0 - 6, неделя=0) ИЛИ пн ... | | | | | | * * * * * * команда
Символ | Значение | Пример | Еквивалентен |
---|---|---|---|
* | Всяка стойност | * * * * | Всяка минута |
– | Диапазон от стойности | 1-10 * * * | Минути от 1 до 10 |
, | Списък със стойности | 1,10 * * * | На 1 и 10 минути |
/ | Стойности на стъпките | */10 * * * | На всеки 10 минути |
@годишно | Веднъж всяка година в полунощ на 1 януари | @yearly | 0 0 1 1 * |
@годишно | Същото като @годишно | @annually | 0 0 1 1 * |
@месечно | Веднъж месечно в полунощ на първия ден | @monthly | 0 0 1 * * |
@седмично | Веднъж седмично в полунощ в неделя сутрин | @weekly | 0 0 * * 0 |
@ежедневно | Веднъж на ден в полунощ | @daily | 0 0 * * * |
@полунощ | Същото като @daily | @midnight | 0 0 * * * |
@почасово | Веднъж на час в началото на часа | @hourly | 0 * * * * |
@рестартиране | Изпълнение при стартиране |
|
Кронтаб
Конфигурацията на Cron се съхранява във файла, наречен "кронтаб". Този файл съдържа списък със задачи и времеви интервали, в които трябва да бъдат изпълнени.
Синтаксис
Задайте в кронтаба се задават чрез записи, наречени "cron jobs". Всяка задача на cron се състои от пет полета, които показват времевите интервали и командата, която трябва да се изпълни. Полетата са: минута, час, ден от месеца, месец и ден от седмицата.
Времеви интервали
Можете да задавате различни времеви интервали във всяко поле на записа на cron задание. Например, ако искате задачата да се изпълни всеки ден в 8 часа сутринта, ще използвате "0 8 * * *". Ако искате задачата да се изпълни всеки понеделник в 8 часа сутринта, ще използвате "0 8 * * 1".
Специални символи
Cron поддържа някои оценени символи за по-голяма гъвкавост. Например символът "*" означава всеки, символът "/" се използва за подаване на интервал, а символът "-" за подаване на времеви диапазон.
Команди за изпълнение
В записа на cron задание се задава командата, която трябва да бъде изпълнена. Това може да бъде всяка валидна команда във вашата операционна система, която желаете да автоматизирате.
Лого и известия
Cron може да генерира логове за изпълнение на задачите, които се записват във файлове. Това ви позволява да проследявате изпълнението на задачите и да проверявате за грешки или проблеми. Освен това, Cron може да изпраща съобщения (имейл или системни съобщения) след успешно или неуспешно изпълнение на задачите. Това ви дава възможност да бъдете информирани за статуса на автоматизираните задачи.
Множество задачи
Cron може да поддържа множество задачи, които могат да се изпълняват в едно и също време или в различни времеви интервали. Това ви позволява да автоматизирате множество процеси и операции във вашата система.
Изпълнение с права на потребител
Cron може да изпълнява задачи от името на конкретен потребител. Това е полезно, когато имате задачи, които имат специфични разрешения или достъп до дефиниране на ресурси.
Редактиране на кронтаба
За да добавите, редактирате или намалите задачи от кронтаба, можете да използвате командата "crontab" в командния ред. Тя ви позволява да управлявате конфигурацията на Cron за конкретен потребител.
Това са основните принципи и функционалности на Cron за планиране на задачи. С Cron можете да автоматизирате повторно задачите си и да включите управлението на системните процеси във вашата UNIX-базирана операционна система.
Благодарим ви за прочитането на статията! Ако намерихте информацията за полезна, можете да дарите посредством бутоните по-долу:
Donate ☕️ Дарете с PayPalDonate 💳 Дарете с Revolut