App下載

5 種方法帶你查看Linux系統(tǒng)服務

猿友 2020-08-04 16:37:56 瀏覽數(shù) (8524)
反饋

Linux 系統(tǒng)服務有時也稱為守護程序,是在Linux啟動時自動加載并在Linux退出時自動停止的系統(tǒng)任務。

在本文中將為大家介紹如何列出 Linux 系統(tǒng)里所有運行的服務,以及如何檢查某個服務的當前狀態(tài)。

Centos/RHEL 7.X 的 systemd 系統(tǒng)服務查看

CentOS 7.x開始,CentOS開始使用 systemd 服務來代替 daemon ,原來管理系統(tǒng)啟動和管理系統(tǒng)服務的相關命令全部由 systemctl 命令來代替。

systemctl list-unit-files

命令的輸出結果如下:

systemctl 命令

查看所有運行著的 systemd 服務可以運行以下命令:

systemctl | more

命令的輸出結果如下:

systemd 服務

除此之外,你還可以使用以下命令:

systemctl list-units --type service

命令的輸出結果如下:

systemd 服務

如果你想要在結果里搜索某個特定的服務,可以使用管道及 grep 命令。

systemctl | grep "apache2"

命令的輸出結果如下:

特定的服務

使用 netstat 命令查看系統(tǒng)服務

Netstat 命令是用來檢查活動的網(wǎng)絡連接、接口統(tǒng)計分析,以及路由表狀態(tài)。這個命令在所有的 Linux 發(fā)行版都可用,我們接下來就用它來查看系統(tǒng)服務。

查看服務及它們所監(jiān)聽的端口:

netstat -pnltu

命令的輸出結果如下:

Netstat 命令

通過系統(tǒng)服務配置文件查看系統(tǒng)服務

服務的配置文件是 /etc/services 是一個 ASCII 文件,它包含了一系列的用戶程序可能用到的服務。在這個文件里,包括了服務名稱,端口號,所使用的協(xié)議,以及一些別名。

對于這個文件,我們可以使用任意的文本工具查看,比如vim

vim /etc/services

命令的輸出結果如下:

ASCII 文件

查看 systemd 服務狀態(tài)

在一些新版的 Linux 系統(tǒng),已經有些用 systemd 來取代 init 進程了。在這種系統(tǒng)里,如何去查看系統(tǒng)服務呢?我們可以使用以下語法:

systemctl status service_name

比如說,查看你系統(tǒng)上的 OpenSSH 是否在運行,可以運行:

systemctl status sshd

命令的輸出結果如下:

OpenSSH

或者,你也可以使用以下命令格式去查看某個服務是否正在運行:

systemctl is-active service_name

如果使用這條命令的話,實現(xiàn)上面那個例子對應的命令為:

systemctl is-active sshd

命令的輸出結果如下:

某個服務

同時,你也可以查看一個服務是否已經被使能了,可以使用以下命令:

systemctl is-enabled service_name

比如,檢查 OpenSSH 服務是否已經使能,可能輸入以下命令:

systemctl is-enabled sshd

命令的輸出結果如下:

早期版本的服務狀態(tài)查看

其實也不能說早期,現(xiàn)在依然還有很多這樣的系統(tǒng),上面跑著 SysV init 進程。對于這種系統(tǒng),查看服務狀態(tài)的命令為:

service service_name status

還是查看 OpenSSH 狀態(tài)的例子,對應的命令為:

service sshd status

命令的輸出結果如下:

OpenSSH 狀態(tài)

你也可以使用以下命令來查看所有的服務狀態(tài):

chkconfig --list

命令的輸出結果如下:

所有的服務狀態(tài)

以上就是查看Linux 系統(tǒng)服務的 5 大方法了。希望對大家有所幫助,對Linux有興趣的同學可以看一下教程

Linux教程:http://m.hgci.cn/linux/

Linux微課:http://m.hgci.cn/minicourse/play/linuxcourse

Linux就該這么學:http://m.hgci.cn/linuxprobe/

0 人點贊