创建一个 centos帐号,帐号名为 yyee,使用yyee帐号登录,执行sudo vi命令时(执行其它命令也有同样情况),报错: linc 不在 sudoers 文件中。此事将被报告。
有的centos版本会出现错误提示:yyee is not in the sudoers file. This incident will be reported.
此情情况的解决方案:
切换到root帐号
su root
修改 /etc/sudoers 文件,此文件只读,权限为440,先修改成777
chmod 777 /etc/sudoers
vi /etc/sudoers
将yyee帐号添加到配置文件,在root ALL=(ALL) ALL下面添加一行yyee ALL=(ALL) ALL
root ALL=(ALL) ALL
yyee ALL=(ALL) ALL
这样就可以使用 yyee帐号操作命令了,但是使用sudo 操作部分命令,需要输入密码,不方便,可以设置yyee帐号使用sudo权限时,免密执行命令,这在使用Jenkins自动部署与自动发布非常方便。
解决方法是把 yyee ALL=(ALL) ALL 修改成 yyee ALL=(ALL) NOPASSWD:ALL
root ALL=(ALL) ALL
yyee ALL=(ALL) NOPASSWD:ALL
然后将 /etc/sudoers 文件改回440权限,必须要改回440权限,不然会提示
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
chmod 440 /etc/sudoers