• centos7.x 将普通用户加入sudoers中,获取sudo执行权限


    centos7.x 将普通用户加入sudoers中,获取sudo执行权限

    0 问题由来

      你在提起兴致学习的时候,兴冲冲地往黑洞洞的文本窗口输入下一行:

    [pan@localhost ~]$ sudo ls
    

      按照系统验证需求,你输入用户密码,结果返回的是冰冷的一串错误信息:

    pan is not in the sudoers file. This incident will be reported.

    1 定位sudoers文件

      按照错误信息的提示,我们获知由于用户“pan”不在sudoers文件中,导致了该命令行执行失败。
      很自然地,我们要定位一下这个文件在哪里,使用这个命令可以达到这个目的:

    [pan@localhost ~]$ whereis sudoers
    

      系统返回我们想要的结果:/etc/sudoers

    sudoers:  /etc/sudoers.d  /etc/sudoers  /usr/share/man/man5/ sudoers.5.gz

    2 将普通用户添加进sudoers文件

      既然找到了目标文件,我们的目的——往sudoers文件中添加用户“pan”,就完成了一半。那剩下的一半怎么做,我们不禁会问。我需要看看sudoers文档里的内容,也许文档注释里就告诉了如何按照要求添加一个用户。
      尝试查看 /etc/sudoers 里的内容:

    [pan@localhost ~]$ ls -l /etc/sudoers && cat /etc/sudoers
    

      返回的是一串错误信息:

    -r--r-----. 1 root root 3938 4月 11 2018 /etc/sudoers
    cat:  /etc/sudoers:  Permission denied

      从返回信息中可以获知,该文件属主root拥有读权限,属组root拥有读权限,只有上述用户才可以查看文件 /etc/sudoers 的内容。
      切换到root用户完成查看文件 /etc/sudoers 的内容并添加用户“pan”进sudoers文件:

    [pan@localhost ~]$ su - root
    

      查看 /etc/sudoers 里的内容:

    [root@localhost ~]# vim /etc/sudoers
    

      我们重点查看这一段内容:

    ## Allow root to run any commands anywhere
    root  ALL=(ALL)  ALL

      既然用户root是这样写入sudoers文件,很自然我们想到把用户root替换成用户“pan”:

    [root@localhost ~]# echo "pan    ALL=(ALL)       ALL" >> /etc/sudoers
    

    3 验证

      切换回用户“pan”并验证sudo的执行权限:

    [pan@localhost ~]$ sudo ls
    

    4 结语

      这是一个很小的问题,本来是不值得一记的,但我生性太懒惰了,学东西时兴冲冲的,学了一段时间后就弃置迤逦、不管不顾了。写下来,就是为了磨性子。

  • 相关阅读:
    iOS 证书、真机调试、发布 App Store
    iOS 9 适配
    交叉编译tslib1.4
    nau8822 codec driver 录音时mic bias 无法自动打开问题
    nuc900 nand flash mtd 驱动
    在ubuntu14.04上安装oracle java6 java7的方法
    N3292x IBR介绍
    N3292系列资料之RTC介绍
    支持mdev的init脚本片断
    Nginx
  • 原文地址:https://www.cnblogs.com/panyangduola/p/11653879.html
Copyright © 2020-2023  润新知