Linux服務器上運行着各種服務(如Web服務器、數據庫、郵件服務等),這些服務需要手動啓動才能提供功能,停止才能釋放資源。作爲Linux新手,掌握服務的啓動、停止和狀態查看命令是服務器管理的基礎。本文將用最簡單的方式講解這些核心命令,讓你快速上手。

一、什麼是Linux服務?

簡單來說,服務就是在後臺持續運行的程序,比如:
- Nginx/Apache:提供網站訪問服務
- MySQL/MariaDB:提供數據庫存儲服務
- SSH:提供遠程登錄服務
- FTP:提供文件傳輸服務

這些服務需要“啓動”才能正常工作,“停止”才能關閉或更新。

二、常用服務管理工具:systemctl(新手必學)

現在主流Linux發行版(如CentOS 7+/RHEL 7+/Ubuntu 16+)都使用 systemd 作爲服務管理系統,通過 systemctl 命令管理服務。
核心格式

sudo systemctl [命令] [服務名]

sudo 表示需要管理員權限,普通用戶需加 sudo 才能執行管理命令)

三、systemctl核心命令詳解

命令 作用 示例(啓動Nginx)
start 啓動服務 sudo systemctl start nginx
stop 停止服務 sudo systemctl stop nginx
restart 重啓服務(先停後啓) sudo systemctl restart nginx
reload 重載配置(無需停止服務) sudo systemctl reload nginx
status 查看服務狀態 sudo systemctl status nginx
enable 設置開機自動啓動 sudo systemctl enable nginx
disable 禁止開機自動啓動 sudo systemctl disable nginx

四、實例:管理常見服務

1. 啓動/停止Web服務器

  • CentOS/RHEL:Web服務名爲 httpd(Apache)
  sudo systemctl start httpd    # 啓動Apache
  sudo systemctl stop httpd     # 停止Apache
  • Ubuntu/Debian:Web服務名爲 apache2
  sudo systemctl start apache2  # 啓動Apache
  sudo systemctl stop apache2   # 停止Apache

2. 啓動/停止數據庫服務

  • CentOS/RHEL:數據庫服務名爲 mariadb(MySQL替代品)
  sudo systemctl start mariadb  # 啓動MariaDB
  sudo systemctl stop mariadb   # 停止MariaDB
  • Ubuntu/Debian:數據庫服務名爲 mysql
  sudo systemctl start mysql    # 啓動MySQL
  sudo systemctl stop mysql     # 停止MySQL

3. 檢查服務狀態

status 命令確認服務是否運行:

sudo systemctl status sshd  # 查看SSH服務狀態(所有系統通用)
  • 輸出中 active (running) 表示服務正常運行;
  • inactive (dead) 表示服務已停止。

4. 設置開機自啓

讓服務開機自動運行,避免手動啓動:

sudo systemctl enable nginx  # 開機自動啓動Nginx
sudo systemctl disable nginx # 禁止Nginx開機自啓

五、常見問題與解決

  1. 權限不足
    普通用戶執行 systemctl 命令會報錯“Permission denied”,需加 sudo
   sudo systemctl start nginx
  1. 服務啓動失敗
    status 或日誌排查原因:
   sudo systemctl status 服務名  # 查看錯誤提示
   sudo journalctl -u 服務名    # 查看詳細日誌(如Nginx配置錯誤)
  1. 忘記服務名
    list-unit-files 列出所有服務:
   systemctl list-unit-files | grep 服務關鍵詞  # 如grep nginx

六、總結

  • 核心命令start/stop/restart/status/enable/disable
  • 權限:需 sudo 或 root 權限
  • 服務名差異:不同發行版服務名可能不同(如CentOS的httpd vs Ubuntu的apache2
  • 排查技巧:用 status 看狀態,用 journalctl 查日誌

多練習幾次,你就能熟練管理服務器上的各種服務了!

小夜