![systemd 服务中是否有保证的操作顺序?](https://linux22.com/image/165887/systemd%20%E6%9C%8D%E5%8A%A1%E4%B8%AD%E6%98%AF%E5%90%A6%E6%9C%89%E4%BF%9D%E8%AF%81%E7%9A%84%E6%93%8D%E4%BD%9C%E9%A1%BA%E5%BA%8F%EF%BC%9F.png)
某个项目中的项目执行是否存在优先级或操作顺序?systemd 服务单元配置文件?
例如,ExecStartPre
操作显然发生在之前ExecStart
。并且多个ExecStartPre
操作是每个都按顺序连续执行直至完成。还,ExecCondition
操作被定义为之前发生ExecStartPre
(并且具有非常特定的顺序/执行)。
还有RuntimeDirectory
操作/创建发生在 之前ExecStart
。
但RuntimeDirectory
操作/创建一定是在ExecStartPre
完成之后才发生吗? (我的实验表明确实如此,但我可能被愚弄了,可能是一种竞争条件——或者经历了依赖于实现的行为)。想必RuntimeDirectory
创作也是在ExecCondition
操作之后进行的吧?
同样,做ExecStopPost
操作一定发生在RuntimeDirectory
删除之前还是之后?
在给定的服务中是否还有其他微妙但隐含的保证顺序?或者,相反,是否还有其他操作可以并行发生(或者其顺序未定义)?