如何列出所有enabled
服务systemctl
?
我知道systemctl
单独运行命令会列出所有服务,但我只想获取enabled
这些服务。
man systemctl
。
如何列出所有enabled
服务systemctl
?
我知道systemctl
单独运行命令会列出所有服务,但我只想获取enabled
这些服务。
man systemctl
。
Answers:
systemctl list-unit-files | grep enabled
将列出所有已启用的。
如果您想要当前正在运行的设备,则需要systemctl | grep running
。
使用您要寻找的那个。已启用,并不意味着它正在运行。运行并不意味着它已启用。他们是两个不同的东西。
启用表示系统将在下次启动时运行该服务。因此,如果启用了服务,则仍然需要手动启动或重新启动服务才能启动。
正在运行意味着它实际上正在立即运行,但是如果未启用它,则在您重新启动时不会重新启动。
systemctl | grep running
不要向我列出任何东西!即使某事正在运行,他的身份也只列出来了:enabled, disabled, masked, static
systemctl list-unit-files --state=running
man systemctl
状态:
--state=
的参数应该是逗号分隔的单元的列表
LOAD
,SUB
或ACTIVE
状态。列出单位时,仅显示处于指定状态的单位。用于--state=failed
仅显示失败的单位。
说明:
LOAD
:反映是否正确加载了单元定义。
ACTIVE
:高级单位激活状态,即的推广SUB
。
SUB
:低级单元激活状态,值取决于单元类型。
尽管您也可以使用此选项仅显示enabled
具有以下内容的单位:
systemctl list-unit-files --state=enabled
如果是一个单元,则enabled
意味着系统将在启动时启动它。尽管将某项设置为enabled
其实也没有start
,所以您将需要手动执行此操作,或者将其设置为之后重新启动系统enabled
。
systemctl enable --now ...
--state=enabled
对systemd版本215(在Raspbian 8 Jessie上)没有影响,但是对systemd版本229(在Ubuntu 16.04.03 Xenial上)有效。
要列出所有的systemd
这些都在服务state=active
和sub=running
systemctl list-units --type=service --state=running
列出正在运行或已退出的子systemd
服务中的所有服务state=active
systemctl list-units --type=service --state=active
要查看“启用的”服务,包括仍处于新贵/初始运行状态的服务,请执行以下操作:
systemctl list-unit-files --type service --state enabled,generated
要查看所有当前正在运行的服务,请执行以下操作:
systemctl list-units --type service --state running
sshd
vs. ssh
和syslog
vs rsyslog
.。
同时概述所有活动和失败的服务:
systemctl list-units --type service --state running,failed