我在vagrant(Ubuntu 12.04 OS)中创建了一个新的非sudo用户(user1),并将不安全的公钥添加到user1授权密钥文件中。在vagrant文件中,将默认用户添加为“user1”:
config.ssh.default.username = "user1"
现在流浪者失败并出现以下错误消息:
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!
mkdir -p /vagrant
Stdout from the command:
Stderr from the command:
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: 3 incorrect password attempts
但是如果我为默认用户设置了sudo用户,那么vagrant up就成功了。 任何人都可以帮助我完成我需要做的更改,以便为非sudo用户启用vagrant。
答案 0 :(得分:4)
Vagrant几乎所有操作都需要VM上的root / sudo权限;比如配置网络,挂载共享文件夹,运行配置程序等等。所以即使你设法避免使用suv也不会得到非常有用的虚拟机。
请注意,您只需要访客上的sudo访问权限。 Vagrant命令本身可以(并且应该)作为主机上的非root用户运行。