非活动与禁用服务与活动与启用服务之间的差异


Answers:


15

手册页systemd包含您要查找的信息。

摘抄

systemd提供了称为“单位”的各种实体之间的依赖系统。单元封装了与系统启动和维护相关的各种对象。大多数单元是在单元配置文件中配置的,其语法和基本选项集在systemd.unit(5)中进行了描述,但是某些单元是根据其他配置自动创建的,或者是根据系统状态动态创建的。

单元可以是“活动的”(表示已启动,绑定,插入...,具体取决于单元类型,请参阅下文),也可以是“不活动的”(表示已停止,未绑定,未插入...),以及被激活或停用的过程,即在两个状态之间(这些状态称为“激活”,“停用”)。

还提供了一种特殊的“失败”状态,该状态与“不活动”非常相似,当服务以某种方式失败时(进程在退出时返回的错误代码,崩溃或操作超时)进入该状态。如果进入此状态,则将记录原因,以备将来参考。

请注意,各种单元类型可能具有许多其他子状态,这些子状态映射到此处描述的五个广义单元状态。

分解

因此,如果您已阅读上述内容,但并没有真正理解其中的区别,这里就是概括地说。

  • 已启用 -服务(单元)配置为在系统启动时启动
  • 已禁用 -服务(单元)配置为在系统启动时无法启动
  • active-服务(单元)当前正在运行。
  • 非活动状态 -服务(单元)当前未运行,但是如果尝试使用该服务,则可能会启动(即变为活动状态)。

不活跃

最后一个似乎是最令人困惑的,但systemd与相同xinetd。它可以为您管理服务,并在需要时根据需要启动它们。因此,当服务处于“关闭” 状态时,它们处于非活动状态,但是在启动时,它们可以变为活动状态

当服务(单元)已启用但尚未手动启动时,也会发生此状态。因此,服务会在停止失败状态下处于“休眠” 状态,直到手动启动服务或系统重新引导为止,由于启用该服务,该服务将变为活动状态


@jasonwryan-是的,我会补充,谢谢!
slm

@jasonwryan-读起来更好吗?
slm

6

启用/禁用服务时,您实际上会告诉是否在引导时自动启动。

因此,systemctl enable lxdm将LXDM设置为DM。但是,它不会立即启动。

另一方面,active / inactive(可能会失败)会告诉您服务的当前状态。运行之后systemctl start lxdm,LXDM实际上会运行,并且其状态为活动。

通常,当您首次安装服务时,首先需要通过启动它来对其进行测试。如果签出,则将其启用。这样,您可以避免在引导过程中挂起系统。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.