systemd 单元文件修改后是否需要重新加载?

systemd 单元文件修改后是否需要重新加载?

假设我写入了一个mine.service文件。然后我使用systemctl enable mine.service

如果我稍后决定编辑mine.service,我是否必须告知已更改的systemd内容mine.service?如果需要,我该怎么做?

答案1

对单元文件进行更改后,应systemctl daemon-reload按照概述运行这里

守护进程重新加载
重新加载 systemd 管理器配置。这将重新运行所有生成器(请参阅systemd.generator(7))、重新加载所有单元文件并重新创建整个依赖关系树。在重新加载守护进程时,systemd 代表用户配置监听的所有套接字都将保持可访问。

然后,您可以根据需要重新启动(或重新加载)您的服务

systemctl restart your-service-name

(daemon-reload 不会重新加载/重新启动服务本身,只是让 systemd 知道新的配置)

答案2

作为对上述答案的补充:如果您在指令中更改了某些内容[Install],则可能需要运行sudo systemctl reenable YOURUNITFILE以重新创建 .target 目录中的符号链接。

相关内容