如何在 Ubuntu 中添加 Sudo 用户

  1. 将用户添加到 sudo 组中
  2. sudoers 文件中添加用户

我们只能以 root 用户的身份使用 sudo 命令执行特定的命令。根用户也被称为 sudo 用户。在 Ubuntu 中,我们可以通过将用户添加到 sudo 组或将用户添加到/etc/sudoers 目录下的文件中来添加 sudo 用户。

将用户添加到 sudo 组中

假设你有一个不是 sudo 用户的用户。要将该用户添加到 sudo 组,我们以现有超级用户的身份运行以下命令。

usermod -aG sudo username

这里,username 是需要添加到 sudo 组的用户名称。

usermod -aG sudo zeppy

它将 zeppy 添加到 sudo 组中。

我们使用 whoami 命令来确认用户是否已经被添加到 sudo 中。

sudo whoami

这个命令提示我们输入密码,如果密码正确,并且该用户在 sudo 组中,终端中会打印出 root

输出:

root

如果用户不在 sudo 组中,我们会得到一个错误信息说 user is not in the sudoers file

sudoers 文件中添加用户

sudo 用户列在/etc/sudoers 文件中。我们可以通过修改 sudoers 文件或在/etc/sudoers.d 目录下添加新的配置文件来添加 sudo 用户。

我们使用 visudo 命令,用 vim 编辑器来编辑/etc/sudoers 文件。visudo 命令在保存前会检查文件中的语法错误。

我们使用下面的命令来使用 nano 编辑器来编辑/etc/sudoers 文件。

EDITOR=nano visudo

如果我们希望允许用户在不被提示密码的情况下运行 sudo 命令,我们使用以下命令打开 /etc/sudoers 文件。

visudo

如果出现权限拒绝的错误,请尝试使用下面的命令。

sudo visudo

现在/etc/sudo 文件将被打开,我们需要在文件的最后添加以下一行。

username ALL=(ALL) NOPASSWD:ALL

这里,username 是我们赋予权限的用户的名字。

在退出编辑器之前,我们需要保存文件。

我们也可以允许用户在没有密码的情况下只执行某些命令。

zeppy ALL=(ALL) NOPASSWD:/bin/mkdir,/bin/rmdir

这使得 zpepy 可以在没有密码的情况下执行/bin/mkdir/bin/rmdir 命令。

我们也可以通过在/etc/sudoers.d 目录下创建配置文件来实现用户运行命令的权限。

现在我们必须在文件中添加与/etc/sudo 文件中相同的内容。

zeppy ALL=(ALL) NOPASSWD:/bin/mkdir,/bin/rmdir

它使 zeppy 能够在没有密码的情况下执行/bin/mkdir/bin/rmdir 命令。

这种方法的好处是,它使事情变得更容易管理,因为我们可以为每个用户的文件名创建一个单独的文件。

comments powered by Disqus