Проверьте, запущен ли файл crontab

Проверьте, запущен ли файл crontab

Я настроил задания crontab на выполнение каждую минуту.

* * * * * sudo /usr/bin/php /root/scrapers/terra_plf/terra_swap_api.php

Я вижу его журнал в файле var/log/syslog:

Jan  3 15:14:01 clearthefog CRON[26579]: (root) CMD (/usr/bin/php     /home/admin/scrapers/terra_plf/terra_swap_api.php)
Jan  3 15:15:01 clearthefog CRON[26623]: (root) CMD (sudo /usr/bin/php /root/scrapers/terra_plf/terra_swap_api.php)

Еще,ничего не записано в БДкак и должен делать файл terra_swap_api.php. Есть предложения почему? Есть способ проверить, действительно ли файл выполняется?

Когда я запускаю тот же скрипт в CLI, он работает отлично: php terra_swap_api.php

решение1

Вы не можете просто sudo в cron, так как он запросит пароль sudo. Вам придется настроить sudo без пароля для этой команды.

Поскольку файл php находится в каталоге /root (обратите внимание, что это проблема безопасности), вы можете установить crontab как пользователь root ( sudo crontab -e) и поместить туда строку (без sudo).

Если ваш скрипт не требует прав root, вы можете запустить его без sudo, но вам придется переместить файлы в доступное для чтения место, поскольку /root принадлежит пользователю root и имеет к нему доступ только он.

Связанный контент