如何在 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