小编cha*_*amu的帖子

systemd:在前一个服务完成后启动服务

我已经安装了 certbot,并且 certbot 制作了自己的 systemd 服务文件“certbot.service”用于自动证书更新,该文件每天通过 .timer 文件启动一次。

成功执行此“certbot.service”后,我喜欢执行第二个(“cert-copy-after-certbot.service”),将证书复制到另一个位置。

目前我的设置如下所示:

“certbot.service”(由 certbot 生成):

pi@raspberrypi:/lib/systemd/system $ cat certbot.service
[Unit]
Description=Certbot
Documentation=file:///usr/share/doc/python-certbot-doc/html/index.html
Documentation=https://letsencrypt.readthedocs.io/en/latest/
[Service]
Type=oneshot
ExecStart=/usr/bin/certbot -q renew
PrivateTmp=true
Run Code Online (Sandbox Code Playgroud)

“cert-copy-after-certbot.service”:

pi@raspberrypi:/etc/systemd/system $ cat cert-copy-after-certbot.service
[Unit]
Description=crt update after certbot has run
Wants=certbot.service
After=certbot.service

[Service]
Type=simple
ExecStart=/bin/sh -c "cat /etc/letsencrypt/live/<mydomain>/privkey.pem  /etc/letsencrypt/live/<mydomain>/fullchain.pem > /etc/ejabberd/ejabberd.pem"
Run Code Online (Sandbox Code Playgroud)

如果我运行这个文件:

systemctl start <unitname>
Run Code Online (Sandbox Code Playgroud)

两项服务均正常运行。

但是当我用“systemctl start certbot”启动 certbot 并检查

systemctl status cert-copy-after-certbot
Run Code Online (Sandbox Code Playgroud)

cert-copy-after-certbot.service 未运行。

是我配置错误了吗?

systemd certbot

6
推荐指数
1
解决办法
7353
查看次数

标签 统计

certbot ×1

systemd ×1