我试图理解service --status-all
Ubuntu 13.10 上的命令输出,因为手册页没有解释它。例如:
[ + ] rsyslog
[ - ] sendmail
[ ? ] sendsigs
[ + ] setvtrgb
[ - ] ssh
、 、+
是什么意思?我搞不懂。我之前安装了 sendmail,但我用 停止并删除了它。我猜这并没有删除 init 脚本,这就是为什么它在输出中显示它,但至少它是一个,所以我假设它没有运行。然后,SSH。我实际上是通过 SSH 进入服务器,所以我假设 SSH 服务应该正在运行,但它无论如何都在那里。然后是神秘的。请有人解释一下这到底是什么意思。-
?
apt-get remove sendmail*
/etc/init.d/
-
-
?
答案1
该service --status-all
命令尝试确定每个初始化脚本/etc/init.d
是否支持某个status
命令(通过 grepping 脚本status
)。
如果找不到该字符串,它将打印[ ? ]
该服务。
否则它将运行/etc/init.d/$application status
。
如果返回代码为 0,它将打印[ + ]
。
如果不是 0,它将打印[ - ]
。
为什么即使正在运行也会ssh
打印?由 Ubuntu(13.10)中的 upstart 控制。 运行时不会产生任何输出,返回代码为 1。 [ - ]
ssh
/etc/init.d/ssh status