在/etc/sudoers
我看到这个:
# Allow members of group sudo to execute any command after they have
# provided their password
# (Note that later entries override this, so you might need to move
# it further down)
%sudo ALL=(ALL) ALL
那么如何将用户添加到该sudo
组?
在/etc/sudoers
我看到这个:
# Allow members of group sudo to execute any command after they have
# provided their password
# (Note that later entries override this, so you might need to move
# it further down)
%sudo ALL=(ALL) ALL
那么如何将用户添加到该sudo
组?
a
非常重要。没有它,他们将从所有其他组中删除。您需要重新启动 shell/终端或注销并重新登录才能生效。也可以看看:
您可以使用用户管理 GUI(在您创建用户的同一位置),或
sudo adduser <username> sudo
在命令行中使用。您还可以使用图形界面。单击面板右上角的齿轮,然后选择“系统设置”,然后选择“用户帐户”
您需要单击小解锁按钮才能在此窗口中编辑内容。然后单击此人的帐户并为“帐户类型”选择适当的下拉列表
如果您使用 Unity 作为桌面环境,这真的很简单。
如果您已经创建了一个用户,那么您可以简单地将其从Standard更改为Administrator,否则请确保您在创建新用户时选择了Administrator 。
在尝试更改之前不要忘记解锁
sudo gpasswd -a $USER sudo
我迟到了,但这个答案可能会对在 Docker 容器中使用 Ubuntu 的人有所帮助。
我最近创建了一个基于 Ubuntu 16.04.1 的 Docker 容器。
默认情况下,Docker Ubuntu 映像是 Ubuntu 的精简版,它没有绝大多数常用工具,包括
sudo
.此外,默认情况下,用户以 root 身份登录到 Docker 容器。
因此,我使用命令启动了容器
docker run
,并安装了“sudo”包:运行命令
adduser myuser sudo
报错adduser: The user 'myuser' does not exist.
。阅读此答案后,我首先运行命令来创建用户:然后运行以下命令:
用户 myuser 已成功添加到 sudo 组。
以下是我使用以下基本映像设置非 root 用户的方法
ubuntu:18.04
:上面的代码会发生什么:
foo
已创建。foo
被添加到foo
和sudo
组中。uid
和gid
设置为 的值999
。/home/foo
./bin/bash
.sed
命令对文件进行内联更新,以/etc/sudoers
允许用户无密码访问该组。foo
root
sudo
sed
命令禁用#includedir
允许子目录中的任何文件覆盖这些内联更新的指令。使用用户模式。使用以下命令添加 sudo 权限:
请注意,您必须使用 root 帐户来执行此操作或使用具有 sudo 权限的另一个帐户。如果由于某种原因您无法访问另一个帐户并且您不知道 root 密码,您将需要一张 Ubuntu(或其他 Linux 发行版)live CD,然后您需要 chroot 进入您的 Ubuntu 文件系统并从 chroot 内部运行上述命令。