要查看linux系統中服務運行狀態,最常用的方法是使用systemctl命令。1. 查看具體服務狀態可執行systemctl status ;2. 快速判斷服務是否運行可用systemctl is-active ;3. 啟動、停止和重啟服務分別用sudo systemctl start/stop/restart ;4. 重載配置使用sudo systemctl reload (視服務支持情況);5. 設置開機自啟用sudo systemctl enable ,取消自啟則用sudo systemctl disable ;6. 查看所有服務狀態列表使用systemctl list-units –type=service或加–all參數顯示全部服務。掌握這些命令能有效管理系統服務,并應注意不同發行版的服務名稱可能存在差異。
在linux系統中,查看服務運行狀態最常用的方式就是使用 systemctl 命令。它是Systemd系統和服務管理工具的核心命令之一,不僅能用來查看服務狀態,還能啟動、停止、重啟和管理各種系統服務。
查看服務狀態的基本命令
要查看某個服務的當前狀態,基本命令格式如下:
systemctl status <服務名>
比如你想查看 nginx 服務是否正在運行,可以執行:
systemctl status nginx
執行后會顯示服務的狀態信息,包括是否處于“active(運行中)”、“inactive(未運行)”或“failed(失敗)”狀態。同時還會顯示最近的日志條目,有助于快速判斷問題。
如果你只是想快速判斷服務有沒有運行,不想看到太多輸出內容,可以用下面這個更簡潔的命令:
systemctl is-active <服務名>
它只會返回 active、inactive 或 failed 等狀態結果,適合腳本中使用。
啟動、停止和重啟服務
除了查看狀態,systemctl 還能直接操作服務的啟停:
-
啟動服務:
sudo systemctl start <服務名>
-
停止服務:
sudo systemctl stop <服務名>
-
重啟服務(適用于配置修改后):
sudo systemctl restart <服務名>
-
重載配置(不中斷服務的情況下應用新配置):
sudo systemctl reload <服務名>
注意:并不是所有服務都支持 reload,具體要看服務本身是否提供了相關功能。
這些命令都非常直觀,但在實際使用時要注意權限問題,通常都需要加上 sudo 才能執行。
設置開機自啟動服務
有些服務我們希望在系統啟動時就自動運行,這時候可以用以下命令設置開機自啟:
sudo systemctl enable <服務名>
如果你不再需要某個服務隨系統啟動,可以取消自啟:
sudo systemctl disable <服務名>
小提示:某些服務可能默認沒有開啟自啟,比如安裝完數據庫或者Web服務器之后,記得手動啟用,否則重啟后服務不會自動運行。
查看所有服務狀態列表
如果你想查看系統中所有服務的狀態,可以使用:
systemctl list-units --type=service
這條命令會列出當前正在運行的服務。如果想看所有已安裝的服務(不管現在有沒有運行),可以加一個參數:
systemctl list-units --type=service --all
這樣可以看到更多服務的信息,便于排查那些你認為應該運行但沒運行的服務。
基本上就這些了。掌握這幾個常用命令,就能輕松地用 systemctl 管理Linux下的服務狀態。雖然看起來簡單,但很多新手容易忽略的是,不同發行版可能會有細微差別,比如服務名稱不一定完全一致,建議配合 systemctl list-units 多看看本地環境的實際服務名。