如何在 Ubuntu 中添加 Sudo 用户
 
我们只能以 root 用户的身份使用 sudo 命令执行特定的命令。root 用户也被称为 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 命令。
这种方法的好处是,它使事情变得更容易管理,因为我们可以为每个用户的文件名创建一个单独的文件。
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn