无法获得干净的流浪盒"删除"或"摧毁"

时间:2016-02-25 00:58:40

标签: vagrant virtualbox vagrant-windows

我在Windows 10上使用Vagrant 1.8.1。当试图移除或销毁一个盒子时,我得到了这些相互矛盾的结果:

baria@DESKTOP-057K4L5 /c/repos/hub/vtc/linphone-windows-dependencies
$ vagrant box list
hashicorp/precise64  (virtualbox, 1.1.0)
windows_2012_r2_core (virtualbox, 0)

baria@DESKTOP-057K4L5 /c/repos/hub/vtc/linphone-windows-dependencies
$ vagrant box remove windows_2012_r2_core
Box 'windows_2012_r2_core' (v0) with provider 'virtualbox' appears
to still be in use by at least one Vagrant environment. Removing
the box could corrupt the environment. We recommend destroying
these environments first:

vagrant-windows-2012-r2-core (ID: 00d3488f41fa40998bfe16ada2ebfd31)

Are you sure you want to remove this box? [y/N] N

baria@DESKTOP-057K4L5 /c/repos/hub/vtc/linphone-windows-dependencies
$ vagrant destroy windows_2012_r2_core
The machine with the name 'windows_2012_r2_core' was not found configured for
this Vagrant environment.

我已经用谷歌搜索了一个" Vagrant环境"是的,什么都没发现。所以我不知道如何破坏环境"。

即便如此,我希望destroy命令能够确认windows_2012_r2_core框的存在,因为listremove命令确认它存在。

这里发生了什么?如何在没有警告或错误的情况下干净地摆脱这个盒子?

2 个答案:

答案 0 :(得分:4)

你可以破坏被引用的VM vagrant destroy 00d3488f41fa40998bfe16ada2ebfd31将破坏正在使用此框的VM,然后你就可以删除该框。

正如@Brandon Davis所说,您可以运行vagrant global-status查看创建的流浪汉VM列表(来自流浪者1.6+),您可以看到哪个VM是00d3488f41fa40998bfe16ada2ebfd31

答案 1 :(得分:2)

您应该从列表中删除无效条目。

vagrant global-status --prune

有关该命令的更多信息,请参阅here