Как проверить / исправить ошибку в cron обновления Certbot

Ваш networkmanager.conf правильный? Это первое, что пришло мне в голову ...

/etc/NetworkManager/NetworkManager.conf

    [ifupdown]
    managed=true
3
19.01.2018, 17:42
1 ответ

Фактическая команда, запускаемая cron,:

test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e 'sleep int(rand(3600))' && certbot -q renew

Начинается с проверки некоторых файлов

test -x /usr/bin/certbot -a \! -d /run/systemd/system

, что переводится как

  • /usr/bin/certbotсуществует и является исполняемым(-x /usr/bin/certbot)
  • а не(-a \!)
  • /run/systemd/systemсуществует и является каталогом(-d /run/systemd/system)

Если проверка прошла успешно, подождите случайное число секунд (perl -e 'sleep int(rand(3600))'), затем попытайтесь обновить сертификат (certbot -q renew).

Однако в Debian 9 systemdустанавливается по умолчанию, что означает, что /run/systemd/systemсуществует и является каталогом, поэтому первоначальный тест завершается неудачно, и команда обновления никогда не выполняется.

Фактическое обновление управляется системным таймером, определенным в файле lib/systemd/system/certbot.timer. Начиная с версии 0.27.0 -1;его содержание:

[Unit]
Description=Run certbot twice daily

[Timer]
OnCalendar=*-*-* 00,12:00:00
RandomizedDelaySec=43200
Persistent=true

[Install]
WantedBy=timers.target

Если cerbot настроен правильно, вы, вероятно, должны найти такие строки, как

Nov  2 20:06:14 hostname systemd[1]: Starting Run certbot twice daily.
Nov  2 20:06:14 hostname systemd[1]: Started Run certbot twice daily.

в вашем syslog.

2
27.01.2020, 21:25

Теги

Похожие вопросы