Дорогие,
Я настроил скрипт в crontab на запуск каждые 10 минут, и он вообще не работает. Я не вижу никаких записей в настроенном пути журнала ( /var/log/cron
)
"*/10 * * * * example_script.sh"
Однако если я изменю синтаксис crontab на следующий:
"* * * * * example_script.sh"
Он выполняет скрипт каждые 10 минут. Я вижу, что в настроенном пути журнала Crond запущен, он даже был перезапущен. В файле журнала cron ошибок нет. example_script.sh — это просто пример, я настроил его с абсолютным путем. Также он работает соответственно с той же конфигурацией crontab, но на другой системе, которая служит для той же цели (просто в другой сетевой зоне)
Почему так происходит? Есть ли какие-то файлы конфигурации, позволяющие изменять сам синтаксис crontab?
решение1
не все версии cron поддерживают расширение step.
проверьте страницу руководства crontab(5), чтобы узнать, какие функции поддерживает ваша версия.
man 5 crontab
если вы не можете использовать, */10
вам придется делать это длинным путем - со списком
0,10,20,30,40,50 * * * * example_script.sh
решение2
Срок действия пароля root истек, поэтому я изменил его на «бессрочный», и мне пришлось подождать некоторое время, чтобы cron заработал соответствующим образом.
решение3
Странно, что следующее выполняется каждые 10 минут:
* * * * * example_script.sh
Он должен запускаться каждую минуту. Или у вас есть некоторые sleep
в вашем example_script.sh
?
Как вы настраиваете cronjob? Просто crontab -e
или вы размещаете его где-то в /etc/cron.d
?