共计 1679 个字符,预计需要花费 5 分钟才能阅读完成。
提醒:本文最后更新于 2018-12-01 21:22,文中所关联的信息可能已发生改变,请知悉!
有多种方式和工具可以在 Fedora / RHEL / CentOS Linux 系统下查找并列出所有正在运行的服务。
服务命令列表运行服务
CentOS / RHEL 6.x 及更早版本(预系统)的语法如下:
service --status-all
service --status-all | more
service --status-all | grep ntpd
service --status-all | less
打印任何服务的状态
要打印 apache(httpd)服务的状态:
service httpd status
列出所有已知服务(通过 SysV 配置)
chkconfig --list
列出服务及其开放端口
netstat -tulpn
打开 / 关闭服务
ntsysv
chkconfig service off
chkconfig service on
chkconfig httpd off
chkconfig ntpd on
ntsysv 是用于配置运行级别服务的简单界面,也可以通过 chkconfig 进行配置。默认情况下,它配置当前的运行级别。只需键入 ntsysv 并选择您想要运行的服务。
有关 systemd 的 RHEL / CentOS 7.x 的注意事项
如果您使用的是基于 systemd 的发行版,例如 Fedora Linux v22 / 23/24 或 RHEL / CentOS Linux 7.x +。尝试使用 systemctl 命令列出正在运行的服务的以下命令。它控制着 systemd 系统和服务管理器。
在 CentOS / RHEL 7.x + 上使用列出 systemd 服务
语法是:列出所有服务:示例输出:
systemctl
systemctl | more
systemctl | grep httpd
systemctl list-units --type service
systemctl list-units --type mount
systemctl list-unit-files
图 01:列出 CentOS / RHEL 7 systemd 系统上安装的所有设备及其当前状态
要查看与特定服务(cgroup)关联的进程,可以使用 systemd-cgtop 命令。与 top 命令一样,systemd-cgtop 基于其服务列出正在运行的进程:
systemd-cgtop
示例输出:
路径任务%CPU 内存输入 / 秒输出 / 秒
/ 85 0.3 240.1M - -
/system.slice/NetworkManager.service 2 - - - -
/system.slice/auditd.service 1 - - - -
/system.slice/crond.service 1 - - - -
/system.slice/dbus.service 1 - - - -
/system.slice/lvm2-lvmetad.service 1 - - - -
/system.slice/polkit.service 1 - - - -
/system.slice/postfix.service 3 - - - -
/system.slice/rsyslog.service 1 - - - -
/system.slice/sshd.service 1 - - - -
/system.slice/...tty.slice/getty@tty1.service 1 - - - -
/system.slice/systemd-journald.service 1 - - - -
/system.slice/systemd-logind.service 1 - - - -
/system.slice/systemd-udevd.service 1 - - - -
/system.slice/tuned.service 1 - - - -
/system.slice/wpa_supplicant.service 1 - - - -
/user.slice/user-0.slice/session-2.scope 1 - - - -
/user.slice/user-1000.slice/session-1.scope 4 - - - -
仅在 CentOS / RHEL 7.x + 使用中列出 SysV 服务(不包括本地 systemd 服务)
chkconfig --list
示例输出:
图 02:在 systemd 上列出基于 Sysv 的服务
正文完