Sorry, user *** is not allowed to execute ‘xxxx‘ as root on ****.

出现这种问题的原因就是用户user不具备某些用户(root)权限所导致的,这样,我们只需将root的某些权限赋给user即可,按下面的步骤来即可:

1.在root用户下,打开 /etc/sudoers 文件:

chmod u+w /etc/sudoers #因为是只读文件,赋予写权限
vi /etc/sudoers #使用vim编辑文件

还不熟悉vim基本用法的可以看过来,最最基本的几个用法:

i : 进入插入模式,即可自由编辑
Ctrl+C :退出插入模式
:wq!  : 保存退出,退出之前一定要先退出插入模式
:qa!  : 不保存退出,退出之前一定要先退出插入模式

2.在该文件的“# User privilege specification” 下面添加如下内容:

user ALL=(ALL) ALL #注意这里的user应改为你自己的用户名,例如我的是zjw,则应为:zjw ALL=(ALL) ALL

PS:这里有几个命令可选,并且都有不同含义:
user        ALL=(ALL)  ALL                                 #允许用户user执行sudo命令(需要输入密码)
%usergroup     ALL=(ALL)  ALL                        #允许用户组usergroup里面的用户执行sudo命令(需要输入密码)
user        ALL=(ALL)  NOPASSWD: ALL           #允许用户user执行sudo命令(不需要输入密码)
%usergroup     ALL=(ALL)  NOPASSWD: ALL  #允许用户组usergroup里面的用户执行sudo命令(不需要输入密码)

3.更灵活的用法(指定可以执行哪些命令,如果没特殊用途建议忽略

username ALL=(ALL:ALL)   NOPASSWD:SETENV:/usr/bin/apt-get, /usr/bin/pip, /bin/tar, /bin/mkdir, /bin/rm, /bin/sh, /bin/cp, /bin/bash, /usr/bin/make install, /bin/ln -s /usr/local/python3.7.5/bin/python3 /usr/bin/python3.7, /bin/ln -s /usr/local/python3.7.5/bin/pip3 /usr/bin/pip3.7, /bin/ln -s /usr/local/python3.7.5/bin/python3 /usr/bin/python3.7.5, /bin/ln -s /usr/local/python3.7.5/bin/pip3 /usr/bin/pip3.7.5, /usr/bin/unzip

这里罗列了常见的可以选择的功能,如有需要,可以自选,但一般建议直接使用步骤2中的全部命令

4.执行以下命令取消“/etc/sudoers”文件的写权限:

chmod u-w /etc/sudoers

猜你喜欢

转载自blog.csdn.net/qq_41368074/article/details/110678582