在使用Linux系统过程中,通常情况下,我们都会使用普通用户进行日常操作,而root用户只有在权限分配及系统设置时才会使用,而root用户的密码也不可能公开。普通用户执行到系统程序时,需要临时提升权限,sudo就是我们常用的命令,仅需要输入当前用户密码,便可以完成权限的临时提升。
用户不在 /etc/sudoers 中就不能临时提权了
不建议直接修改/etc/sudoers
文件。
其实只要把用户加到 wheel 用户组(Ubuntu是admin组)就ok。
gpasswd -a user admin
如果要精准控制每个用户可以执行命令的,可以用visudo
工具修改。
其中格式为 用户名 网络中的主机=(执行命令的目标用户)[是否要密码] 可以执行什么命令
比如
swift 192.168.0.123=(root) NOPASSWD: /usr/bin/yum,/usr/bin/dnf
意思是 swift 这个用户能在 192.168.0.123 使用root用户权限,且不用密码认证就能使用yum和dnf命令