当我运行vagrant时,会创建一个新的virtualbox机器,而不是运行.vagrant\machines\default\virtualbox\id
中标识的虚拟机。然后将新虚拟机的id写入id
文件。
我的虚拟机:
C:\Users\Chris>vboxmanage list vms
"MyVM_1373377014" {177aef6c-b9ec-4a85-adad-76c70f80fa62}
下一步:
C:\Users\Chris>echo 177aef6c-b9ec-4a85-adad-76c70f80fa62 > .vagrant\machines\default\virtualbox\id
其次是:
C:\Users\Chris>vagrant up
新VM中的结果:
C:\Users\Chris>vboxmanage list vms
"MyVM_1373377014" {177aef6c-b9ec-4a85-adad-76c70f80fa62}
"MyVM_1373566342" {4fedb342-cc0b-40fd-a8d1-403049065274}
包含新VM ID的id
:
C:\Users\Chris>type .vagrant\machines\default\virtualbox\id
4fedb342-cc0b-40fd-a8d1-403049065274
因此,出于某种原因创建了一个新VM,而不是启动现有VM。
我正在运行Vagrant版本1.2.3
答案 0 :(得分:16)
确保未在ID中添加换行符。因此,而不是:
echo "177aef6c-b9ec-4a85-adad-76c70f80fa62" > .vagrant/machines/default/virtualbox/id
我必须这样做:
echo -n "177aef6c-b9ec-4a85-adad-76c70f80fa62" > .vagrant/machines/default/virtualbox/id
注意 -n 切换到echo命令。
来源: