Что не так с этой записью cron?
0,35 * * * * /home/scripts/backup.sh "daily backup"
что не так с моей строкой cron, она не работает, я еще не пробовал @daily, но хотел убедиться, что она работает, поэтому я запускаю его в 0 минут в час и 35 минут каждый час.
Мне не нужно перезагружать сервер?
3 ответа
Сначала убедитесь, что cron выполняется вовремя. Это можно сделать, проверив /var/log/cron. Вы должны видеть исполнение каждые 0 и 30 мин.
tail -f /var/log/cron
Если cron пытается выполнить выполнение вовремя, а сценарий еще не запущен, возможно, это проблема с правами доступа. Предоставьте разрешение на выполнение пользователю, для которого вы запускаете cron. Если вы не уверены, что нужно пользователю, просто выполните gran для всех:
chmod a+x /home/scripts/backup.sh
Убедитесь, что вы правильно изменили файл crontab.
Правильный способ отредактировать crontab - это запустить crontab -e
, И правильный способ проверить его содержание с crontab -l
,
Если вы изменили /etc/crontab
, тогда вам может понадобиться перезапустить службу cron (в зависимости от вашей версии cron). И вам нужно поставить имя пользователя перед командой. Как это:
0,35 * * * * root /home/scripts/backup.sh "daily backup"
И, конечно, если вы используете какой-то странный демон cron, то, что я сказал, может быть неверно.
Вам не нужно перезагружать сервер. Пока демон cron работает, все должно быть в порядке.
Вы уверены, что скрипт исполняется пользователем, от имени которого выполняется cronjob? Чтобы пометить его как исполняемый, сделайте это chmod a+x /home/scripts/backup.sh