Linux 使用 systemd 配置定时触发器
不使用 crontab
,而是使用 systemd
也可以实现定时触发的功能
首先需要在 /etc/systemd/system/
中添加一个 myjob.timer
文件,内容如下:
[Unit]
Description=get new content
[Timer]
OnBootSec=30s
OnCalendar=*:0/20
[Install]
WantedBy=timers.target
此计时器将在启动后 30 秒启动,并且每 20 分钟触发一次服务。随意更改配置以更好地满足您的需求。
然后你需要在同一个目录下添加一个 myjob.service
文件。这将是对上述计时器触发的服务的描述。
[Unit]
Description=get new content
Wants=myjob.timer
[Service]
User=www-data
Type=simple
ExecStart=/usr/bin/php /opt/myservice/job.php
最后,您需要使用 systemctl enable myjob.timer
启用计时器并使用 systemctl daemon-reload
重新加载 systemd 配置。