" systemctl restart"有什么区别?和" systemctl start"?

时间:2015-03-25 17:43:28

标签: linux restart systemd

我有两个服务A和B,其中A依赖于B,这意味着A需要B提供的服务,所以在A的服务单元中我有After和Requires设置为B

After=B.service
Requires=B.service

现在,当我停止服务B时,​​服务A也会停止。然后在我启动它时停止B后,服务A没有启动,我必须手动启动它。

systemctl stop B (A is also stopped)
systemctl start B (A is not started)
systemctl start A (I have to start A manually)

但是如果服务A已经停止并且我重新启动服务B那么B和A都由systemctl启动

systemctl stop A
systemctl restart B (B and A both are started)

我的问题是startrestart对于我的A服务单位有什么区别?

2 个答案:

答案 0 :(得分:1)

systemctl start:用于启动服务(不是重启持久性)

systemctl stop:用于停止服务(不是重启持久性)

systemctl restart:用于停止然后启动服务

答案 1 :(得分:0)

您可以随时参阅手册页以便更好地理解。基本上需要,要求,之后的处理方式不同。

依赖关系对服务文件中的需求和需求的反应不同。

启动只是在您想要使用它时启动服务,但重新启动主要是在服务文件中进行某些更改时完成的。 请参阅此链接以更好地理解https://wiki.archlinux.org/index.php/Systemd