vagrant up没有在.vagrant \ machines \ default \ virtualbox \ id中启动vm

时间:2013-07-11 18:17:08

标签: vagrant

当我运行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

1 个答案:

答案 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命令。

来源: