Начини на плащане Abuse

Cron в Linux: какво представлява?

26.02.2023, 13:13

Cron е програма за планиране на задачи в операционната система Linux. Тя ви позволява да стартирате скриптове или команди автоматично в определени часове, интервали или събития.

Как да я използвате?

За да използвате Cron, трябва да създадете файл crontab, който съдържа списък със задачи и времеви интервали, през които те трябва да се изпълняват. Всяка задача в crontab представлява низ, който се състои от пет полета, разделени с интервали:

*     *     *     *     *  command_to_execute
-     -     -     -     -
|     |     |     |     |
|     |     |     |     +----- day of the week (0 - 6) (Sunday = 0 or 7)
|     |     |     +------- month (1 - 12)
|     |     +--------- day of the month (1 - 31)
|     +----------- hour (0 - 23)
+------------- minutes (0 - 59)

* означава всяка стойност, например, ако полето minutes съдържа *, задачата ще се изпълнява на всяка минута. Ако искате да зададете конкретна стойност за дадено поле, например всеки ден в 3 часа сутринта, трябва да напишете 0 3 * * * *.

За да създадете или промените файл crontab, използвайте командата crontab -e. Всеки потребител може да има свой собствен crontab файл, както и системния файл /etc/crontab, който съдържа задачите, изпълнявани като потребител root.

Съществува команда cronjob, която ви позволява да изпълнявате задачи вътре в контейнерите Docker. Тя работи подобно на crontab, но задачите могат да се изпълняват вътре в контейнера вместо в хост системата.

Използване на Cron: алгоритъм стъпка по стъпка

За да започнете да използвате Cron в Linux, следвайте следните стъпки:

1. отворете терминал и въведете командата crontab -e. Това ще отвори файла crontab за текущия потребител.

2. Добавете задача към файла crontab в съответствие с формата на полето, описан по-горе. Например, ако искате да стартирате скрипта every_hour.sh на всеки час, добавете реда 0 * * * * * * /path/to/every_hour.sh.

3. Запазете промените и затворете файла.

4. Проверете дали задачата е добавена в crontab, като използвате командата crontab -l. Тя ще покаже списък на всички задачи, добавени в crontab.

5. Проверете дали задачата се изпълнява по график, като използвате командата tail -f /var/log/syslog. Ще видите изходните данни, свързани с изпълнението на задачата.

6. Ако искате да премахнете дадена задача от crontab, използвайте командата crontab -r.

Има някои важни моменти, които трябва да имате предвид:

  • можете да добавяте както скриптове, така и команди в crontab. Но ако искате да изпълните скрипт, уверете се, че той има права за изпълнение(chmod +x /path/to/script.sh).
  • ако искате задачата да се изпълнява с правата на потребител root, използвайте командата sudo crontab -e, за да отворите файла crontab за потребителя root.
  • уверете се, че командите и скриптовете, които изпълнявате, са на правилното място и имат правилните права за четене и изпълнение.

Обърнете внимание, че времето, посочено в crontab, ще съвпадне с времето на сървъра, на който се изпълнява Cron. Ако използвате отдалечен сървър, уверете се, че времето на сървъра е конфигурирано правилно.