Vagrant up不适用于VMWare提供程序

时间:2016-01-09 15:18:56

标签: vagrant vmware setuid

我在最新的Linux Mint上使用Vagrant。它适用于VirtualBox,但是对于VMWare,它失败并出现此错误:sudo helper setuid-wrapper must run as root.

我在网上发现的关于此问题的极少数讨论建议将符号链接~/.vagrant.d添加到未加密的磁盘。这是我尝试过的,但遗憾的是没有任何成功。我还为~/vmware~/.vmware创建了符号链接,但又没有成功。

是否有人遇到此错误并找到了解决方案?

非常感谢。

1 个答案:

答案 0 :(得分:2)

如果使用加密的homedir,这仍然是今天的问题(Vagrant 1.9.3 / Ubuntu 17.04 / VMWare Workstation 12.5.5)。对我来说,最简单的解决方案就是将流浪者目录移动到非加密文件系统上,如OP建议的那样:

sudo mkdir /vagrant
sudo mv ~/.vagrant.d/ /vagrant/
ln -s /vagrant/.vagrant.d/ ~/.vagrant.d

在调试模式下运行我可以看到它试图以root身份运行的命令存在于我移动的目录中:

 INFO subprocess: Starting process: ["/home/geoff/.vagrant.d/gems/2.2.5/gems/vagrant-vmware-workstation-4.0.18/bin/vagrant_vmware_desktop_sudo_helper_wrapper_linux_amd64", "prune-forwarded-ports", "/tmp/vagrant-sudo-helper20170422-15385-brgg1q"]

确实在vagrant up之后VM运行了。将所有内容置于/vagrant之下这样做有点混乱,如果你有一个以上的用户,你可能需要找出更优雅的东西,也许是/vagrant/$USER。我选择的目录不符合Linux FHS,但是谁在乎; - )

我希望这可以解决方案,但也许这会帮助某人