sudoers文件是用來配置sudo命令的權限控制的文件,它位于/etc/sudoers。
sudoers文件支持兩種編輯方式:
sudo visudo
visudo會在編輯sudoers文件之前進行語法檢查,如果有語法錯誤會給出警告。這是推薦的編輯方式。
sudo nano /etc/sudoers
使用文本編輯器編輯sudoers文件時需要特別小心,因為語法錯誤可能導致sudo命令無法正常使用。
在sudoers文件中可以配置以下內容:
<用戶或用戶組> <主機=(執行命令的用戶)> <運行命令的命令>
例如,授予用戶bob在所有主機上以root身份運行所有命令的權限:
bob ALL=(root) ALL
Cmnd_Alias <別名> = <命令1>, <命令2>, ...
例如,創建一個別名叫MYCOMMANDS,包含/bin/ls和/bin/cat:
Cmnd_Alias MYCOMMANDS = /bin/ls, /bin/cat
然后可以將別名用于權限控制:
bob ALL=(root) MYCOMMANDS
%<用戶組> <主機=(執行命令的用戶)> <運行命令的命令>
例如,授予用戶組admins在所有主機上以root身份運行所有命令的權限:
%admins ALL=(root) ALL
在保存sudoers文件后,對于新配置的權限,必須重新登錄或使用以下命令使其生效:
sudo -k
然后再次使用sudo命令即可按照新的配置執行命令。