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

drp*_*eas 12 systemd systemctl exit-status

我对启用或活动和禁用或不活动的概念感到困惑。

有人可以解释一下吗?

slm*_*slm 17

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

摘抄

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

单元可能是“活动的”(意味着开始、绑定、插入……取决于单元类型,见下文)或“非活动”(意味着停止、未绑定、未插入……),以及在被激活或去激活的过程,即在两种状态之间(这些状态被称为“激活”、“去激活”)。

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

请注意,各种单元类型可能有许多附加的子状态,这些子状态映射到这里描述的五个广义单元状态。

分解

因此,如果您已经阅读了以上内容,但并没有真正理解其中的区别,那么简而言之,就是在这里。

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

不活跃

最后一个可能看起来最令人困惑,但systemd按照与xinetd. 它可以为您管理服务并在需要时按需启动它们。因此,当服务处于“关闭”状态时,它们处于非活动状态,但在启动时,它们可以变为活动状态

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


apr*_*046 7

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

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

另一方面,活动/非活动(和可选的失败)告诉您服务的当前状态。运行后systemctl start lxdm,LXDM实际运行,状态为active。

通常,当您第一次安装服务时,您首先会通过启动它来测试它。如果它签出,那么您将启用它。这样,您就可以避免在引导期间挂起系统。