问题以及解决办法:hadoop 不在 sudoers 文件中。此事将被报告

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

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

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

在打开的文件中,找到下面这一行: 
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 

你可能感兴趣的:(linux)