Linux 中有许多操作是 root 超级用户可以执行,而普通用户不可以执行的,此时普通用户若想执行这些操作,就需要 root 超级用户的授权。其步骤为:
一、打开 sudo 配置文件
方法:#visudo
二、搜索 root,找到如下命令
方法:末行模式下输入 / ,使用 N/n 上下翻找
红框内即为配置命令,root 处编辑要授权给哪个用户;第一个 ALL 处编辑允许 sudo 操作在哪些主机上执行,对应 #hostname -f 命令下出现的主机域名(也就是FQDN);第二个 ALL 处编辑以谁的身份运行,由于我们要从 root 用户那里获取权限,此处可以填写 root 或者 ALL,效果相同;第三个 ALL 处编辑你要获取哪些命令的权限,注意要使用命令的完整路径。
三、编辑 sudo 配置文件
本案例中,我们给用户 Chang 授权了三个命令,/usr/sbin/useradd 表示允许 Chang 创建新用户,/usr/bin/passwd 表示允许 Chang 更改用户密码,!/usr/bin/passwd root 表示不允许 Chang 更改 root 用户的密码。
关于命令的完整路径,可以使用 #which 正常命令 来查找。
四、使用 sudo 执行命令
第一步:切换到 Chang 用户
第二步:正常命令前加 sudo
第三步:输入 Chang 自己的用户密码
第四步:通过验证,确实添加了用户 newuser1
五、说明
第一个 ALL 处编辑允许 sudo 操作在哪些主机上执行:如果填写 ALL 表示允许在所有主机上执行;如果填写 localhost,则表示只允许主机域名为 localhost 时才能执行,此时终端 [Chang@localhost ~] 中的红色部分应显示为 localhost,否则不能执行;如果填写其他域名,想要执行成功的话,应在 /etc/hosts 文件下修改域名。