Я хочу запускать задание cron каждый день в 20:10.
10 20 * * * curl -s -o /dev/null http://www.example.com/blah.php
Однако это не работает.
Если я попытаюсь запускать его каждую минуту:
* * * * * curl -s -o /dev/null http://www.example.com/blah.php
Работает нормально. Что дает?
Команда «дата» показывает правильное время на моем сервере.
измените UTC с да на нет в / etc / default / rcS. Теперь это работает.
Этот ответ помог мне в той же ситуации. Перезапуск службы cron помог службе cron моего сервера распознать изменения, которые я внес в системную дату.
https://stackoverflow.com/questions/34626135/crontab-linux-not-running-at-specific-time
sudo service rsyslog restart
sudo service cron restart or sudo service crond restart
Вышеупомянутое должно работать нормально. Вот список, который вы можете попробовать:
/etc/crontab
или crontab другого пользователя)echo works > /tmp/cron-works
) echo works > /tmp/curl-works; curl ...
) или что-то в этом роде/var/log/syslog
должен показать выполнение команд и возможные сбоиwww.example.com
- если да, перепроверьте журналы@houry
(видеть man 5 crontab
для полного списка)Кроме того, как вы проходите аутентификацию - если это сетевая аутентификация, вам может потребоваться подтвердить, что она работает. перед любой crontab выполняется.
Просто перезапустите службу cron.
$ sudo service cron restart