问题描述
这个问题与这个问题非常相似:List of available services
对于我的特定情况,我想知道是否有特定的命令来显示Ubuntu下的服务的完整列表。
我确实运行了ls /etc/init.d
,它确实显示了一个非常全面的列表,但是缺少一些条目。我确实看到了apache2
,myslq
,gdm
以及其他很多东西。
但是其中一些人不见了。一个示例是plexmediaserver
(我最近安装了plex服务器,在查找其服务名称时遇到了一些困难)
因此,请用尽可能少的词重新表述此问题:是否有办法获得{x}
的全部可能性清单,
service {x} status
注意:使用Ubuntu 15.04
最佳方案
由于Ubuntu最近已切换到systemd,因此新贵将列出一些服务。
service --status-all
和其他,由systemd
systemctl -l --type service --all
或以root身份
systemctl -r --type service --all
但是,仍在使用init系统的软件可能会在
/etc/init.d
浏览所有这些内容将产生大多数已在系统上注册的服务。
在Arch wiki的systemd上有一个很好的总结
次佳方案
您需要组合命令,具体取决于您的Ubuntu版本。在systemd成为init系统(15.04之前的版本)之前,满足以下条件:
service --status-all # for sysv init scripts
initctl list # for Upstart jobs
service
和initctl
可能同时列出了某些服务,在这种情况下,Upstart作业通常是正确的。
对于systemd
,John Petit’s answer提供必要的命令。