返回

Linux系统上查看正在运行的服务的3种方法,新手速成!

Linux

## 查看 Linux 机器上正在运行的服务

作为一名资深程序员,我深知查看正在运行的服务对故障排除和系统优化至关重要。在本文中,我将介绍三种在 Linux 机器上查看所有正在运行的服务的方法,并提供清晰易懂的示例。

### 1. 使用 systemd 命令

systemd 是大多数现代 Linux 发行版中使用的系统和服务管理器。要使用 systemd 查看正在运行的服务,请执行以下命令:

systemctl list-units --type=service --state=running

输出将如下所示:

UNIT                            LOAD   ACTIVE     SUB     DESCRIPTION
apache2.service                  loaded active running  The Apache HTTP Server
cups.service                     loaded active running  CUPS Scheduler
...

### 2. 使用 service 命令

service 命令是另一个用于管理服务的命令。要使用 service 查看正在运行的服务,请执行以下命令:

service --status-all

输出将如下所示:

[ + ]  anacron
[ + ]  apache2
[ + ]  apparmor
...

### 3. 使用 ps 命令

ps 命令可用于查看正在运行的进程。要使用 ps 查看正在运行的服务,请执行以下命令:

ps -A | grep -i 'service'

输出将如下所示:

 1432 ?        Ssl      0:00 /usr/sbin/service rsyslog restart
 1433 ?        Ssl      0:00 /usr/sbin/service rsyslog start
 1562 ?        Ssl      0:00 /usr/sbin/service ssh restart
...

### 常见问题解答

1. 哪种方法最推荐?

对于现代 Linux 发行版,推荐使用 systemd 命令。它提供了有关服务状态的详细输出。

2. 我可以在远程机器上查看正在运行的服务吗?

是的,可以使用 SSH 命令和远程服务器上的 systemd 命令查看远程机器上的正在运行的服务。

3. 我如何停止或启动服务?

要停止服务,可以使用 systemctl stop <service_name> 命令。要启动服务,可以使用 systemctl start <service_name> 命令。

4. 如何禁用或启用服务?

要禁用服务,可以使用 systemctl disable <service_name> 命令。要启用服务,可以使用 systemctl enable <service_name> 命令。

5. 服务为什么没有启动或停止?

服务可能没有启动或停止的原因有很多。检查日志文件或使用 systemctl status <service_name> 命令查看服务状态以获取更多信息。