Wim*_*eka 9 dependencies systemd services
man for systemd unit 的定义有点不清楚:https : //www.freedesktop.org/software/systemd/man/systemd.unit.html
如果一个单元
foo.service包含一个设置Before=bar.service并且两个单元都在启动,则bar.service的启动将延迟到foo.service启动。[...]After=是 的倒数Before=,即 whileAfter=确保在列出的单元完成启动后启动已配置的单元,Before=确保相反,在启动列出的单元之前已配置的单元完全启动。
可以说我有a.service和b.service。我想a.service之前完全启动,b.service因为b.service取决于a.service.
阅读上述手册页后,我找不到任何关于是否的结论性解释:
Before=b.service在a.service单元文件中指定After=a.service在b.service单元文件中指定After=a.service在b.service单位的文件,并 Before=b.service在a.service单元文件我需要为 systemd 单元文件声明哪些依赖项?有关系吗?
meu*_*euh 13
您只需要一个After=或Before=在您的一对单元中。您可能更喜欢以下手册页中的内容systemctl:
--after ... 任何 After= 依赖项都会自动镜像以创建 Before= 依赖项。
使用此选项list-dependencies来检查您认为 systemd 应该做什么。例如
$ systemctl list-dependencies --after timers.target
timers.target
* |-sysstat-collect.timer
* |-sysstat-summary.timer
* |-systemd-tmpfiles-clean.timer
* `-unbound-anchor.timer
$ systemctl list-dependencies --before sysstat-collect.timer
sysstat-collect.timer
* |-sysstat-collect.service
* |-shutdown.target
* `-timers.target
Run Code Online (Sandbox Code Playgroud)
如果您正在upstart从这里转换,您可能会从这里得到一些提示,您可以阅读这里列出的所有博客,标题为 Systemd for Administrators 博客系列。
| 归档时间: |
|
| 查看次数: |
17397 次 |
| 最近记录: |