服务器设置和教程 · 16 7 月, 2025

CentOS 與 Ubuntu 系統命令使用對比

CentOS 和 Ubuntu 作為兩種主流的 Linux 發行版,分別基於 Red Hat(RPM 體系)和 Debian(DEB 體系),在系統管理命令上存在顯著差異。本文檔從技術視角詳細對比兩者的常用命令,涵蓋套件管理、服務管理、網路配置、防火牆、使用者管理、檔案系統和日誌管理,旨在幫助管理員和開發者快速上手並在兩種系統間高效切換。

1. 套件管理

套件管理是 CentOS 和 Ubuntu 的核心差異之一,CentOS 使用 yumdnf(CentOS 8 及以上),Ubuntu 使用 apt

功能CentOS (RPM 體系)Ubuntu (DEB 體系)
更新套件列表sudo yum check-updatesudo dnf check-updatesudo apt update
安裝套件sudo yum install <package>sudo dnf install <package>sudo apt install <package>
移除套件sudo yum remove <package>sudo dnf remove <package>sudo apt remove <package>
搜尋套件sudo yum search <keyword>sudo dnf search <keyword>sudo apt search <keyword>
更新所有已安裝套件sudo yum updatesudo dnf upgradesudo apt upgrade
清理快取sudo yum clean allsudo dnf clean allsudo apt clean
查看已安裝套件rpm -qayum list installeddnf list installeddpkg -lapt list --installed

注意

  • CentOS 8 及以上版本預設使用 dnf,其語法與 yum 類似但效能更優。
  • Ubuntu 的 apt 是對 apt-getapt-cache 的高級封裝,適合互動式使用。

2. 服務管理

CentOS 7 和 Ubuntu 16.04 及以上版本均採用 systemd 作為服務管理框架,因此命令高度一致。

功能CentOS (Systemd)Ubuntu (Systemd)
啟動服務sudo systemctl start <service>sudo systemctl start <service>
停止服務sudo systemctl stop <service>sudo systemctl stop <service>
重啟服務sudo systemctl restart <service>sudo systemctl restart <service>
查看服務狀態sudo systemctl status <service>sudo systemctl status <service>
啟用開機自動啟動sudo systemctl enable <service>sudo systemctl enable <service>
停用開機自動啟動sudo systemctl disable <service>sudo systemctl disable <service>
列出所有服務systemctl list-unit-files --type=servicesystemctl list-unit-files --type=service

注意

  • CentOS 6 及更早版本使用 SysVinit,命令為 service <service> start/stop/restart
  • Ubuntu 在 14.04 及更早版本部分使用 Upstart,需注意歷史版本相容性。

3. 網路管理

網路管理命令因配置方式不同而異,CentOS 依賴 NetworkManager 或手動配置文件,Ubuntu 則使用 Netplan(18.04 及以上)。

功能CentOSUbuntu
查看 IP 位址ip addrifconfigip addrifconfig
重啟網路服務sudo systemctl restart NetworkManagersudo systemctl restart networkingsudo netplan apply
查看網路介面狀態nmcli device statusnmcli device status
配置靜態 IP編輯 /etc/sysconfig/network-scripts/ifcfg-<interface>編輯 /etc/netplan/01-netcfg.yaml,然後 sudo netplan apply

注意

  • Ubuntu 18.04 及以上使用 Netplan,配置文件為 YAML 格式,需注意縮進。
  • CentOS 的網路配置文件路徑可能因版本而異,需檢查具體介面檔案。

4. 防火牆管理

CentOS 預設使用 firewalld,Ubuntu 使用 ufw(簡化的 iptables 前端)。

功能CentOS (Firewalld)Ubuntu (UFW)
啟動防火牆sudo systemctl start firewalldsudo ufw enable
停止防火牆sudo systemctl stop firewalldsudo ufw disable
查看防火牆狀態sudo firewall-cmd --statesudo ufw status
開放端口sudo firewall-cmd --add-port=<port>/tcp --permanentsudo ufw allow <port>
關閉端口sudo firewall-cmd --remove-port=<port>/tcp --permanentsudo ufw delete allow <port>
重新載入防火牆配置sudo firewall-cmd --reloadsudo ufw reload

注意

  • firewalld--permanent 選項確保規則持久化,需配合 --reload 生效。
  • ufw 簡單易用,適合輕量級配置,但功能較 firewalld 稍弱。

5. 使用者與權限管理

使用者管理命令在兩種系統中基本一致,但使用者刪除命令略有不同。

功能CentOSUbuntu
新增使用者sudo adduser <username>sudo adduser <username>
刪除使用者sudo userdel -r <username>sudo deluser --remove-home <username>
修改使用者密碼sudo passwd <username>sudo passwd <username>
新增使用者至群組sudo usermod -aG <group> <username>sudo usermod -aG <group> <username>

注意

  • userdel -rdeluser --remove-home 都會刪除使用者家目錄,需謹慎操作。
  • 群組管理命令完全相同,-aG 確保追加群組而非覆蓋。

6. 檔案系統管理

檔案系統管理命令一致,但預設檔案系統可能不同(CentOS 傾向 xfs,Ubuntu 傾向 ext4)。

功能CentOSUbuntu
查看磁碟空間df -hdf -h
查看目錄大小du -sh <directory>du -sh <directory>
掛載檔案系統mount /dev/sdX /mntmount /dev/sdX /mnt
卸載檔案系統umount /mntumount /mnt

注意

  • 掛載操作需確保目標設備和掛載點存在。
  • 建議使用 lsblk 檢查設備狀態。

7. 日誌管理

日誌管理命令基本一致,但日誌檔案路徑不同。

功能CentOSUbuntu
查看系統日誌sudo journalctltail -f /var/log/messagessudo journalctltail -f /var/log/syslog
查看登入日誌lastlast

注意

  • CentOS 的 /var/log/messages 可能因配置而變為 /var/log/secure
  • Ubuntu 的 /var/log/syslog 是預設系統日誌路徑。

總結

方面CentOSUbuntu
套件管理yum/dnf (RPM)apt (DEB)
服務管理systemctl (CentOS 7+),舊版 servicesystemctl (16.04+),舊版 Upstart
防火牆firewalldufw
網路配置/etc/sysconfig/network-scripts//etc/netplan/ (18.04 及以上)

通過掌握這些差異,管理員和開發者可快速適應 CentOS 和 Ubuntu 的系統管理需求,優化運維效率。