在 VagrantFile 更改后,Vagrant VirtualBox VM 正在初始化新的而不是加载现有的 VM

Gor*_*McD 7 virtualbox windows-xp ubuntu vagrant

我在 Windows 上设置了一个 Vagrant Ubuntu 12.04 盒子(VirtualBox 作为提供者),并且在过去几个月里一直运行良好。昨天,我又增加了转发端口到VagrantFile,做vagrant haltvagrant up。登录后,我安装的任何程序都不在那里(which git什么也没显示)。

我可以通过 VirtualBox gui 手动启动 VM,一切正常,所以我知道它在那里并且可以正常工作。我在这个相关的 stackoverflow 问题中尝试了解决方案,但vagrant up仍然没有启动现有的虚拟机。

这是我的 Vagrant VM 的 VirtualBox 日志:http : //paste.ubuntu.com/6460060/

不知道还有什么地方可以看。有没有办法强制 vagrant 加载现有的 VM?

编辑:这也是我的 VagrantFile。这是非常标准的,但我想它可能会有所帮助。https://gist.github.com/gorrillamcd/7694989

请记住,在我对 VagrantFile 进行更改之前,机器运行良好。这是唯一在功能性和非功能性之间发生变化的东西。

小智 6

您的工作目录(带有 的那个Vagrantfile)和 VirtualBox VM之间的链接是一个名为的文件id,位于以下子目录中:

.vagrant\machines\<machine_name>\virtualbox
Run Code Online (Sandbox Code Playgroud)

(通常<machine_name>对于单个 VMVagrantfiledefault)。

id文件包含 VirtualBox VM 的 UUID。您应该使用以下命令检查正确的 UUID:

"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" showvminfo <VM_NAME> | findstr /B UUID
Run Code Online (Sandbox Code Playgroud)

然后你应该id用那个 UUID替换文件,最后运行vagrant up.