【问题标题】:how to write a linux service to start a service on computer A after a service in computer B is up and running?(computer A and B are in same network)计算机B中的服务启动并运行后如何编写linux服务以在计算机A上启动服务?(计算机A和B在同一网络中)
【发布时间】:2022-01-01 09:57:19
【问题描述】:

在我的 senario 中,我在计算机上有一个 linux 服务,需要在计算机 B 中的服务之后运行(计算机 A 和 B 在同一网络中)。我如何使用 system.d 来完成这项工作?

【问题讨论】:

    标签: linux service systemd


    【解决方案1】:

    这种情况有几种解决方案,最简单的解决方案是编写如下所示的 bash 脚本。 在此之前,您应该在两台 linux 计算机之间设置ssh-key

    首先打开一个文件。

       nano /usr/bin/script.sh 
    

    然后将下面一行放入其中。

    #!/bin/bash
    ssh root@computerA  'systemctl start YOURServicName'
    

    现在您需要在计算机 B 中将此 bash 脚本作为 SystemD 服务运行。

    [Unit]
    Description=My Shell Script
    
    [Service]
    ExecStart=/usr/bin/script.sh
    
    [Install]
    WantedBy=multi-user.target
    

    更多信息请使用this链接。

    终于 您需要在 B.service 文件中添加这一行:

    After=A.service
    

    希望我的解释有用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-05
      • 1970-01-01
      • 2014-06-26
      • 1970-01-01
      • 2015-10-13
      • 1970-01-01
      • 2020-03-19
      • 2012-09-09
      相关资源
      最近更新 更多