使用 systemd 服务依次运行两个脚本

使用 systemd 服务依次运行两个脚本

我有两个脚本,我想要做的是:

  • 凌晨 1 点,第一班列车运行
  • 一旦第一个停止,这是一个条件,第二个触发

那么,我应该使用:

[Service]
ExecStartPre = script.py
ExecStart = secondscript.py

或者

[Service]
Type = oneshot
ExecStart = first.py
ExecStart = second.py

man注意:

请注意,ExecStartPre=不能用于启动长时间运行的进程。由通过调用的进程分叉的所有进程ExecStartPre=将在下一个服务进程运行之前被终止。

而且我的脚本可以长期运行(每个脚本运行几个小时)。

或者是否有更好的方法来确保只有在第一次完全执行后才进行第二次运行?

此外,此服务由计时器调用:

[Timer]
OnCalendar=*-*-* 1:00:00
Unit = script.service

我只想要一个实例本次运行;即使script.service运行了 3 天,下一次运行也应该在运行结束后第二天 1:00:00 报告。这是默认设置吗?

相关内容