【发布时间】:2022-01-01 09:57:19
【问题描述】:
在我的 senario 中,我在计算机上有一个 linux 服务,需要在计算机 B 中的服务之后运行(计算机 A 和 B 在同一网络中)。我如何使用 system.d 来完成这项工作?
【问题讨论】:
在我的 senario 中,我在计算机上有一个 linux 服务,需要在计算机 B 中的服务之后运行(计算机 A 和 B 在同一网络中)。我如何使用 system.d 来完成这项工作?
【问题讨论】:
这种情况有几种解决方案,最简单的解决方案是编写如下所示的 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
希望我的解释有用。
【讨论】: