zoukankan      html  css  js  c++  java
  • 解决ubuntu系统“XXX is not in the sudoers file”错误

    用adduser新建的用户,当时只输入了一个用户名,没做其它操作,这样就建立了一个normal用户。在执行sudo vim hadoop-env.sh时,报“*** is not in the sudoers file.  This incident will be reported.”。

    经查询,网上的解决方案大多数都是:

    执行visudo或vim /etc/sudoers命令,然后在root用户下面增加<username> ALL=(ALL) ALL

    我相信这样一定可以解决问题,但这是杀鸡用牛刀。看起来似乎是让这个用户和root一样拥有了全部全部全部的权限,有没有感觉瑟瑟发抖。像这样的方法,我们自己使用玩玩还可以,但这肯定不是正确的解决方法。更何况,在安装系统时建立的一个用户hadoop1,可以使用sudo,但这个用户名并不在sudoers 这个文件里,所以肯定有其它正确的方法。

    后来在这里https://www.cnblogs.com/yadongliang/p/8659950.html发现了,博主所说的他没有成功的方案一,我测试成功。

    sudo是个用户组,只要把用户加到这个用户组,就可以使用sudo了,这才叫解决方案。

    下面是具体步骤:

    切换到不能使用sudo的用户,就叫hadoop2吧,登录以后,执行groups命令,发现是空的,也就是说用adduser增加的用户,不在任何用户组里。

    而安装系统时创建的用户,hadoop1则有很多用户组:

    adm cdrom sudo dip plugdev lpadmin sambashare

    所以,用adduser把hadoop2加到sudo用户组:

    adduser hadoop2 sudo

    再次执行groups,sudo用户组就出现了。

    再次执行sudo vim hadoop-env.sh,成功。

  • 相关阅读:
    日期和时间
    怎样将GB2312编码的字符串转换为ISO-8859-1编码的字符串?
    数据类型之间的转换:
    类的加载顺序,支出下列程序的输出结果
    内部类
    对象的类型转换
    简单继承
    封装
    计算a+b
    U盘删除文件时提示“文件或目录损坏且无法读取”的解决方法
  • 原文地址:https://www.cnblogs.com/Sabre/p/10383303.html
Copyright © 2011-2022 走看看