我在我的机器上安装了两个流浪主机。我使用用户名/密码登录: vagrant/vagrant 创建了一个用户 user1。
当我处于流浪用户状态并输入以下命令时:
[vagrant@host1]sudo su -
我无需指定密码即可登录 root。另外,当我输入命令时:
[vagrant@host1]sudo su - user1
我切换到user1。但是当我对 user1 帐户执行相同的操作时,它会在切换之前要求输入 user1 密码。为什么会这样呢?
答案1
因为 Vagrant 默认情况下会编辑 sudoers 文件以赋予自己 sudo 权限,而无需密码。
查看该文件/etc/sudoers.d/vagrant
,您将看到类似以下的行:
vagrant ALL=(ALL) NOPASSWD:ALL
您可以通过执行并添加以下行来授予您user1
相同的权限:sudoedit /etc/sudoers
user1 ALL=(ALL) NOPASSWD:ALL
笔记:您必须使用这些sudoedit
命令,它会在保存文件之前运行验证,以确保您不会被锁定在系统之外。
答案2
我的乌班图设置
sudo adduser username
sudo adduser username sudo
printf "username ALL=(ALL) NOPASSWD:ALL" > username.tmp
sudo mv username.tmp /etc/sudoers.d/username
sudo chown -R root:root /etc/sudoers.d/username
sudo chmod 664 /etc/sudoers.d/username
这将创建一个用户'用户名'谁可以使用须藤无需输入密码。