І те, cronі anacronдемони, які можуть планувати виконання повторюваних завдань на певний момент часу, визначений користувачем.
Основна відмінність між cronі anacronполягає в тому, що перший передбачає, що система працює постійно. Якщо ваша система вимкнена і у вас заплановано роботу протягом цього часу, робота ніколи не виконується.
З іншого боку anacron, "анахронічний" і розроблений для систем, які не працюють 24x7. Для його роботи anacronвикористовуються файли з печаткою часу, щоб з’ясувати, коли востаннє виконувалися його команди. Він також підтримує файл так /etc/anacrontabсамо, як cronце робить. Крім того, cron.dailyпрацює анакрон щодня. Отже, anacronможна виконувати роботу лише раз на день, але cronможе працювати так часто, як і кожну хвилину.
Від man anacrontab:
При виконанні Anacron зчитує список завдань з файлу конфігурації, як правило, / etc / anacrontab (див. Anacrontab (5)). Цей файл містить перелік завдань, якими керує Anacron. Кожен запис завдання вказує період у днях, затримку хвилин, унікальний ідентифікатор завдання та команду оболонки.
Для кожної роботи Anacron перевіряє, чи виконувалася ця робота за останні n днів, де n - період, визначений для цієї роботи. Якщо ні, Anacron виконує команду оболонки завдання, очікуючи кількість хвилин, вказану як параметр затримки.
Після завершення команди Anacron записує дату в спеціальний файл часової позначки для цієї роботи, щоб він міг знати, коли її виконати ще раз. Для розрахунків часу використовується лише дата. Година не використовується.
Це означає, що якщо завдання планується виконувати щодня, а комп'ютер був вимкнений протягом цього часу, коли анакрон запускається, то можна побачити, що завдання востаннє виконувались більше 24 годин тому і виконати завдання правильно.
Наприклад, якщо ви вказали таке в /etc/anacrontab:
7 15 test.daily /bin/sh /home/username/script.sh
і в той день, коли передбачуване script.shзавдання буде виконано, якщо система не працює, anacronвиконає script.sh15 хвилин після того, як система відновиться.
Мало довідок: