Eric H Asked: 2010-07-29 15:40:18 +0800 CST2010-07-29 15:40:18 +0800 CST 2010-07-29 15:40:18 +0800 CST 命令列出启动时启动的服务? 772 是否有列出启动时运行的服务的命令?我想它会涉及 parsing/etc/init.d/和各种/etc/rc.*目录。 upstart services systemd init.d 9 个回答 Voted TrinitronX 2015-09-27T19:49:10+08:002015-09-27T19:49:10+08:00 快速回答是:这取决于您的init系统。 长答案是:对于当前版本的 Ubuntu,您可能混合了Upstart和SystemV。15.04“Vivid Vervet”(以及其他 Linux 发行版,如 RHEL/CentOS 7)之后的较新版本的 Ubuntu 正在转向使用SystemD。 暴发户 新贵文档 列出所有服务: sudo initctl list 要列出所有 Upstart 服务并initctl show-config在它们上运行,这条单线可能会有所帮助: sudo initctl list | awk '{ print $1 }' | xargs -n1 initctl show-config 系统五 SysV 运行级别文档 列出所有服务: sudo service --status-all 或者: # for init scripts: ls /etc/init.d/ # for runlevel symlinks: ls /etc/rc*.d/ 系统D 新贵用户的 SystemD FedoraProject SystemD 文档 RHEL 7:使用 SystemD 管理服务 红帽:SystemD 概述 列出所有服务: sudo systemctl --all list-unit-files --type=service 或者: ls /lib/systemd/system/*.service /etc/systemd/system/*.service Best Answer Scott 2010-10-13T18:04:43+08:002010-10-13T18:04:43+08:00 您可以简单地使用initctl listshell 命令列出其内容,/etc/init而不是使用建议的dbus-send命令。 AppyGG 2019-08-24T05:17:33+08:002019-08-24T05:17:33+08:00 对于 Ubuntu 18.04 使用: systemctl list-units --type=service 而不是initctl. 自 Ubuntu 16.04 起,initctl已被systemd(源,法语)取代。 如果它可以帮助@sanjay-manohar。 Jeremy Kerr 2010-07-29T19:30:57+08:002010-07-29T19:30:57+08:00 和目录已被 ' /etc/init.d' init 工具取代。尽管这些目录中的脚本会按预期执行,但在 init 上运行的新方法是由 init 中的文件定义的/etc/rc.*upstart/etc/init/ 您可以通过在 dbus 上查询 upstart 来列出所有 upstart 作业: dbus-send --print-reply --system --dest=com.ubuntu.Upstart \ /com/ubuntu/Upstart com.ubuntu.Upstart0_6.GetAllJobs 您可能必须更改0_6以反映您拥有的暴发户版本。此命令适用于我的 Lucid 安装。 john 2010-10-13T19:39:08+08:002010-10-13T19:39:08+08:00 如果您想要一个漂亮的服务图形表示和启动时间,请尝试: sudo apt install bootchart 对于 systemd(自 16.04 起),请尝试使用 systemd-bootchart: sudo apt install systemd-bootchart CBmemnon 2014-07-22T02:46:43+08:002014-07-22T02:46:43+08:00 Id 用于initctl show-config <servicename>真正获取有关何时/是否您的服务将在引导期间启动的详细信息。 像这样: $ initctl show-config myservice myservice start on runlevel [2345] stop on runlevel [!2345] 或者对于 NFS4 idmap-daemon: $ initctl show-config idmapd idmapd start on (local-filesystems or mounting TYPE=nfs4) stop on runlevel [06] chkconfig 仅在基于 RedHat 的系统上更可取,恕我直言。 Ciro Santilli OurBigBook.com 2014-03-06T22:26:45+08:002014-03-06T22:26:45+08:00 在 12.04 上,我们可以使用: sudo apt-get install chkconfig chkconfig --list 但它已在 12.10 中删除。 样本输出: acpi-support 0:off 1:off 2:on 3:on 4:on 5:on 6:off acpid 0:off 1:off 2:off 3:off 4:off 5:off 6:off apparmor 0:off 1:off 2:off 3:off 4:off 5:off 6:off S:on Noam Manos 2019-01-30T01:37:21+08:002019-01-30T01:37:21+08:00 除了系统服务和脚本之外: /etc/init.d/ /lib/systemd/system/ /etc/systemd/system/ 也可能有AutoStart 应用程序,例如: find / -name "*autostart*" ls -1 "/etc/xdg/autostart" "/home/$USER/.config/autostart" "/usr/share/gdm/autostart" "/usr/share/gnome/autostart" Carlos Alvsan 2017-01-08T08:04:14+08:002017-01-08T08:04:14+08:00 使用 gawk: ls -l /etc/rc*.d/* | gawk 'match($0, /rc([0-6S]).d.*\/(.*)$/, a) {l[a[2]]=l[a[2]]a[1]","}; END{for(v in l){print v,substr(l[v],1,length(l[v])-1)}}' 样本输出: $ ls -l /etc/rc*.d/* | gawk 'match($0, /rc([0-6S]).d.*\/(.*)$/, a) {l[a[2]]=l[a[2]]a[1]","}; END{for(v in l){print v,substr(l[v],1,length(l[v])-1)}}' | egrep README README 0,1,2,3,4,5,6,S
快速回答是:这取决于您的
init
系统。长答案是:对于当前版本的 Ubuntu,您可能混合了Upstart和SystemV。15.04“Vivid Vervet”(以及其他 Linux 发行版,如 RHEL/CentOS 7)之后的较新版本的 Ubuntu 正在转向使用SystemD。
暴发户
列出所有服务:
要列出所有 Upstart 服务并
initctl show-config
在它们上运行,这条单线可能会有所帮助:系统五
列出所有服务:
或者:
系统D
列出所有服务:
或者:
您可以简单地使用
initctl list
shell 命令列出其内容,/etc/init
而不是使用建议的dbus-send
命令。对于 Ubuntu 18.04 使用:
而不是
initctl
.自 Ubuntu 16.04 起,
initctl
已被systemd
(源,法语)取代。如果它可以帮助@sanjay-manohar。
和目录已被 '
/etc/init.d
' init 工具取代。尽管这些目录中的脚本会按预期执行,但在 init 上运行的新方法是由 init 中的文件定义的/etc/rc.*
upstart
/etc/init/
您可以通过在 dbus 上查询 upstart 来列出所有 upstart 作业:
您可能必须更改
0_6
以反映您拥有的暴发户版本。此命令适用于我的 Lucid 安装。如果您想要一个漂亮的服务图形表示和启动时间,请尝试:
对于 systemd(自 16.04 起),请尝试使用 systemd-bootchart:
Id 用于
initctl show-config <servicename>
真正获取有关何时/是否您的服务将在引导期间启动的详细信息。像这样:
或者对于 NFS4 idmap-daemon:
chkconfig 仅在基于 RedHat 的系统上更可取,恕我直言。
在 12.04 上,我们可以使用:
但它已在 12.10 中删除。
样本输出:
除了系统服务和脚本之外:
也可能有AutoStart 应用程序,例如:
使用 gawk:
样本输出: