【问题标题】:Upstart to Systemd porting新贵到 Systemd 移植
【发布时间】:2015-09-29 14:00:03
【问题描述】:

我在一个新贵的 conf 文件中有这一行:

start on starting service1 or stopped service2
stop on stopping service1

如何将其转换为 systemd 单元目标?我已经搜索过任何类型的析取支持,但我找不到。

【问题讨论】:

    标签: init upstart systemd


    【解决方案1】:

    当 service2 启动时,service1 也应该启动。这种关系可以使用Requires来实现 在service2的单元配置文件中,添加

    Requires=service1.service
    

    但是,当您运行命令启动 service2 时,这将同时启动两个服务。要控制服务启动的顺序,需要使用BeforeAfter

    更多信息here

    【讨论】:

    • 终于明白了。所以你对 systemd 有两个概念:依赖和排序。建立排序的唯一谓词是“After”和“Before”。如果两者都未指定,则依赖服务将与设置依赖关系的服务并行启动。谢谢@t_thirupathi!
    • 对于“或”,我只是在 service2 中使用 ExecStopPost 和“systemctl start” cmd。
    猜你喜欢
    • 2017-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-22
    • 2011-09-08
    相关资源
    最近更新 更多