vagrant destroy是否适用于当前文件夹或全局

时间:2014-12-24 11:39:09

标签: vagrant vagrantfile

我对vagrant destroy命令感到困惑。

vagrant status的输出是

Current machine states:

default                   running (virtualbox)

但是我在虚拟框中运行了两个流浪的虚拟机

MacBook-Pro:server john$ vboxmanage list runningvms
"john-servers_default_1415665580149_91312" {114ad904-8629-4c4a-9344-d685c78a8228}
"test" {a6be5689-0ac3-4ac7-845d-97f2f4022cd9}

现在当我vagrant destroy时,它说你想要destroy deafult VM

现在我不确定它会破坏哪台机器。我在test VM内,但我不想承担风险。

我试过这个vagrant destroy testvagrant destroy a6be5689-0ac3-4ac7-845d-97f2f4022cd9,但这不起作用

删除VM的安全方法是什么?

2 个答案:

答案 0 :(得分:7)

要将test VM,cd销毁到测试文件夹并输入vagrant destroy - 这将破坏此目录中的流浪者环境。销毁后,default提供商仍会在您输入vagrant statusnot created (virtualbox)状态时显示。

vagrant status仅显示在virtualbox中运行的一个vagrant VM,因为此命令仅显示该目录中的基础guest虚拟机的状态。

要查看所有流浪者环境,请输入vagrant global-status --prune - 无论您运行此命令的目录是什么,都会显示所有活动流浪者环境的状态。您甚至可以通过复制标记到不需要的VM的ID来键入vagrant destroy ID_TAG来销毁当前目录之外的VM。

如果您仍然不确定是否销毁了正确的VM,请在vagrant halt目录中输入test并测试是否正在停止正确的VM。如果选择了错误的VM,这至少是可逆动作。但是vagrant destroy目录中的初始解决方案test应该可以解决问题。

答案 1 :(得分:1)

在您的情况下,

vagrant destroy将删除" john-servers_default_1415665580149_91312" VM。

Vagrant在.vagrant/machines/default/virtualbox/id

中查看包含Vagrantfile的目录中的VM ID

如果你想删除"测试" VM,你可以使用VBoxManage。

VBoxManage unregistervm a6be5689-0ac3-4ac7-845d-97f2f4022cd9 –delete

请记住,-delete标志将删除与此VM关联的所有磁盘