systemd 的“用户”和“系统”单元/服务之间有什么区别?

systemd 的“用户”和“系统”单元/服务之间有什么区别?

systemd由于我有点困惑“system和单位或服务背后的想法user是什么”,所以我想请求一个解释。

具体来说,我曾想过系统单位适用于属于供应商操作系统的单元,而用户单位适用于客户的本地附加组件。

但似乎用户单位处理方式不同systemd(例如,systemctl daemon-reload不会影响任何用户单位,而手册页声称:“重新加载 systemd 管理器配置。这将重新运行所有生成器(参见 systemd.generator(7)),重新加载所有单元文件,并重新创建整个依赖关系树。“),所以它不仅仅是一种组织结构,而是一种真正语义的结构。

答案1

systemd为系统运行服务管理器,为登录用户运行服务管理器。系统单元只能由 UID 0 启动/停止,系统服务以 UID 0 身份运行(除非您设置User=),用户单元可以由相应用户启动/停止,用户服务以相应用户身份运行。

要与用户的服务经理交谈,请使用systemctl --user。在您的示例中,您必须调用systemctl --user daemon-reload才能重新加载用户单元。

请注意,用户单位不能依赖于系统单位,反之亦然。

相关内容