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命令即可按照新的配置执行命令。