对于这样一个简单的问题,我只是找不到简单的文档。
如果我创建服务单元,请将其放置在/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
这是自动启动新服务的唯一方法吗?
我之所以问这个问题,是因为它想静态地简单地分析系统映像中的服务而不运行它,因此需要弄清楚将自动启动哪些服务。
答案 0 :(得分:1)
[Install]
部分仅指示systemd应如何启用该服务。真正启动服务的关键是目标通常通过目标.wants/
目录中的符号链接将其拉入。该符号链接可以由systemctl enable
使用[Install]
部分中的信息来创建,但是也可以手动创建。