无法在 Ubuntu 16.04 中使用 cron 重新加载服务

无法在 Ubuntu 16.04 中使用 cron 重新加载服务

我有一个脚本可以更新我的 SSL 证书并重新加载 squid,以使其在重新生成证书后更新其证书:

certbot renew
service squid reload

我将它放入 /etc/cron.monthly/certbot-renew.sh 以使其以 root 身份每月运行。

证书已更新,但每次证书更改时,squid 都会停止工作。如果我这样做

service squid reload

手动启动它就可以工作了。我无法弄清楚发生了什么,因为系统日志中只有关于手动重新加载 squid 的信息:

sudo grep squid /var/log/syslog
Dec 23 20:39:11 localhost squid[8363]:  * Reloading Squid HTTP Proxy configuration files
Dec 23 20:39:11 localhost squid[8363]:    ...done.

命令

sudo grep CRON /var/log/syslog

没有显示任何与鱿鱼有关的内容。

cron 有什么问题?如果我手动运行脚本

sudo ./certbot-renew.sh

squid 重新启动并且 syslog 中出现“正在加载 Squid ...”。

我如何安装 certbot我如何安装 squid对我所做的事情进行全貌分析。

答案1

我刚刚在通过 cron 重新加载 nginx 时遇到了类似的问题。似乎service ...命令被完全忽略了。系统日志中没有任何内容,nginx 日志中也没有任何内容。

我改用了systemctl reload nginx,这似乎有效。

相关内容