我有一个用户,supersecretuser,在sudo组中,但没有sudo访问权限。是否还需要执行其他操作才能授予此用户sudo访问权限?
$ ssh supersecretuser@myserver
supersecretuser@myserver:~$ groups
supersecretuser adm cdrom sudo dip plugdev lpadmin sambashare
supersecretuser@myserver:~$ sudo vim install.sh
[sudo] password for supersecretuser:
supersecretuser is not in the sudoers file. This incident will be reported.
Run Code Online (Sandbox Code Playgroud)
supersecretuser 是我们在安装 Ubuntu 时设置的用户。
由于您的错误消息说您的用户is not in the sudoers file,请您检查您的/etc/sudoers文件,看看是否有这样一行:
%sudo ALL=(ALL:ALL) ALL
Run Code Online (Sandbox Code Playgroud)
如果缺少此行,则sudo组中的用户将不是 sudoers。使用visudo命令编辑文件(检查正确的 synthax 并锁定文件)。
您还可以尝试添加这样的自定义行:
root ALL=(ALL:ALL) ALL
Run Code Online (Sandbox Code Playgroud)
替换root为您的用户名,重新启动,然后尝试是否有效。
根据您在评论中与 @steeldriver 的对话,我猜测您的用户没有注销。
确保supersecretuser已注销的最简单方法是作为另一个用户在终端中输入who.
这样做时,我得到如下输出:
mitch@quartz:~$ who
mitch :0 2014-09-08 09:49 (:0)
mitch pts/0 2014-09-08 13:18 (:0.0)
Run Code Online (Sandbox Code Playgroud)
我只看到我自己。类似地,w在终端中输入会显示谁都已登录以及他们在做什么:
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
mitch :0 :0 09:49 ?xdm? 29:08 0.11s init --user
mitch pts/0 :0.0 13:18 5.00s 0.06s 0.01s w
Run Code Online (Sandbox Code Playgroud)
您可以使用以下命令停止您的其他用户(我称之为 SSU):
pkill -STOP -u SSU
Run Code Online (Sandbox Code Playgroud)
但是,说实话,最简单的解决方案是在可能的情况下重新启动系统。
| 归档时间: |
|
| 查看次数: |
36039 次 |
| 最近记录: |