systemd:没有'[Install]'部分的服务单元,它会在启动时自动运行吗?

问题描述 投票:0回答:1

对于这么简单的问题,我只是找不到直截了当的文件。

如果我创建一个服务单元,请将其放在/etc/systemd/system/a.service中,

[Unit]
Requires=network-online.target
After=network-online.target
[Service]
ExecStart=/bin/bash /etc/a.sh

看到我省略了[Install]部分和正常的systemctl enable ...步骤

[Install]
WantedBy=multi-user.target

然后当机器重新启动时,服务将无法运行。我知道这很有意义,似乎systemd试图找到所有运行的/etc/systemd/system/.wants/.service,

这是自动启动新服务的唯一方法吗?

我之所以这么说的原因是想要静态地简单地分析系统映像中的服务而不运行它,因此需要确定哪些服务将自动启动。

service systemd autostart
1个回答
1
投票

[Install]部分只是指示systemd应该如何启用服务。启动服务真正重要的是它被目标拉入,通常是通过目标的.wants/目录中的符号链接。该符号链接可以由systemctl enable使用[Install]部分中的信息创建,但也可以手动创建。

© www.soinside.com 2019 - 2024. All rights reserved.