CentOS 預設未配置 sudo,需手動編輯 /etc/sudoers 授權普通用戶執行管理指令。本文說明標準流程:切換 root、修改檔案權限、編輯配置、恢復權限、驗證生效。
su - root
chmod 0640 /etc/sudoers
vim /etc/sudoers
# 找到
root ALL=(ALL) ALL
# 下方新增 (替換 username 為實際用戶名)
username ALL=(ALL) ALL
# 存檔退出
chmod 0440 /etc/sudoers
su - username
sudo -l # 列出權限
sudo systemctl status sshd # 測試執行
visudo 替代手動修改權限visudo
# 直接在編輯器中新增行,存檔自動語法檢查與權限恢復,無需手動 chmod
強烈建議:生產環境務必用 visudo,防止語法錯誤導致無法 sudo 鎖死系統。
# 僅允許特定指令免密
username ALL=(ALL) NOPASSWD: /usr/bin/systemctl restart httpd
# 群組授權 (wheel)
%wheel ALL=(ALL) ALL
# 加入群組
usermod -aG wheel username
sudo: /etc/sudoers is mode 0640, should be 0440:權限未恢復,執行 chmod 0440 /etc/sudoers。sudo: parse error in /etc/sudoers near line X:語法錯誤,需進單用戶模式或 LiveCD 掛載修復。groups username。