certbot не запускается из crontab - proUbuntu
2 голосов
/ 18 июня 2020

Я установил certbot из pip3:

# pip3 freeze|grep -i certbot
certbot==1.5.0
certbot-apache==1.5.0
certbot-dns-digitalocean==1.5.0

Я могу запускать certbot из командной строки как root, но я настроил crontab для запуска perl -e 'sleep int(rand(1800))' && certbot -q renew как root два раза в неделю, и я получить это сообщение об ошибке r по электронной почте:

/bin/sh: 1: certbot: not found

Если я наберу whereis certbot в командной строке, я получу следующий результат:

certbot: /usr/local/bin/certbot

Почему certbot не запускается из crontab успешно?

Я использую Ubuntu 18.04.

1 Ответ

5 голосов
/ 18 июня 2020

Вам необходимо использовать пути заполнения в пределах crontab, в то время как ваш исполняемый файл r не принадлежит Cron PATH, который по умолчанию включает только /bin и /usr/bin. Итак, ваша r cronjob должна выглядеть так:

* * * * * perl -e 'sleep int(rand(1800))' && /usr/local/bin/certbot -q renew

Вы можете настроить среду cron, как показано в последней точке здесь , но IMO лучше r для измените свои r скрипты (и cronjobs) для работы со средой по умолчанию, таким образом, они будут более переносимыми, когда вы настраиваете новую систему, et c.

...