http://blog.csdn.net/jiangshouzhuang/article/details/52517734

问题来源:
我们使用sudo命令,让Hadoop用户使用root身份执行命令时报错:
[hadoop@mydocker ~]$ sudo date
[sudo] password for hadoop:
hadoop 不在 sudoers 文件中。此事将被报告。

可以看到hadoop用户没有权限使用sudo命令以root身份执行命令。

解决方法:
打开终端,先以root身份登录,然后执行如下命令:
visudo

在打开的文件中,找到下面这一行:
root ALL=(ALL) ALL
并紧帖其下面,添上自己的用户名,比如:hadoop
hadoop ALL=(ALL) ALL

如果只做到这一步,然后保存退出,那么就能使用sudo命令了,但是此时需要输入root密码才可以。要让执行时不需要输入密码,再找到下面这一句:

%wheel ALL=(ALL) NOPASSWD: ALL

将#号去掉,使其生效。

接着我们执行如下命令,将用户”hadoop”加入到”wheel”组中
gpasswd -a hadoop wheel

这样,我们就可以使用hadoop用户登录后执行 sudo 命令时不再输入密码了。
[hadoop@mydocker ~]$ sudo date
2016年 09月 12日 星期一 21:42:52 CST

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐