У меня есть файл crontab, который выглядит так:
* * * * * /home/abliskovs/update/update.sh
Однако, когда я проверяю системный журнал на предмет того, что задание выполнено, ничто не может указывать на то, что оно когда-либо выполнялось. Как я могу проверить, работает ли он?
crontab -l
выводит следующее:
* * * * * /home/abliskovs/update/update.sh
Ответы:
пример
Также убедитесь, что:
sudo /etc/init.d/cron restart
Как сделать файл исполняемым?
Несколько способов сделать ваш файл исполняемым
источник
Убедитесь, что файл сценария является исполняемым {chmod 755}, иначе он не выполнит его
источник
chmod +x filename
Сценарий оболочки,
update.sh
вероятно, содержит ошибки, например, некоторые команды, которые не могут быть выполнены, потому что команда не может быть найдена. В этом случае может помочь добавить путь к вашей команде в переменной PATH или добавить ее непосредственно перед вашей командой. Также помогает указать адрес электронной почты MAILTO, на этот адрес отправляются сообщения электронной почты, полученные в результате выполнения Cronjobs.Вы также можете проверить локальный почтовый ящик
mail
и файл системного журнала на/var/log/syslog
наличие ошибок. Смотрите также этот связанный вопрос, почему cronjobs может не работать .источник
У меня возникла та же проблема, и причина для меня была в том, что crontab не работал, потому что у него не было на это разрешения. Я изменил файл и поместил его в /tmpt/output.log
Дайте мне знать, если это работает для вас.
источник