从文件系统中删除该框后,如何从全局状态中删除Vagrant框?

时间:2014-07-07 13:36:17

标签: vagrant virtualbox devops

//,在意识到它还在运行之前,我删除了一个包含正在运行的Vagrant框的文件夹。

如何将其从Vagrant(全局状态)中删除?

我已经删除了Virtualbox VM。

5 个答案:

答案 0 :(得分:184)

要丢弃vagrant global-status中列出的旧框(例如,您从文件系统中删除了包含.vagrant目录的文件夹),您只需运行:

vagrant global-status --prune

您可能需要直接从提供程序(VMWare,Virtualbox,..)控制界面中删除虚拟机。

答案 1 :(得分:3)

我认为全局数据的新文件名是~/.vagrant.d

因此,您可以运行rm -r ~/.vagrant.d删除所有用户数据,以便重新开始。

答案 2 :(得分:0)

对于我的情况:其中kitchen和.kitchen /文件夹可能包含由

创建的隐藏流浪文件
$ kitchen create

我需要比厨房破坏或流浪汉破坏甚至流浪汉破坏机器ID更进一步(来自vagrant global-status - 它会在您的用户空间中提供流浪实例列表。)

在我的情况下,我不得不吹掉用户.vagrant隐藏目录中包含的流浪汉机器锁文件。

$ rm -r ~/.vagrant/data

在我的情况下,我需要sudo上面的命令。

然后我终于干净了

$ vagrant global-status

列表

答案 3 :(得分:0)

首先,您使用vagrant global-status列出所有流浪汉机器及其状​​态ids

然后你可以使用:

 vagrant destroy -f the_id_of_the_machine

之后如果再次运行vagrant global-status,您会发现vagrant destroy -f命令中指定的ID已从列表中删除。

然后您可能需要重新启动计算机但是这些命令不会影响您的计算机。

答案 4 :(得分:0)

以上命令在Windows机器上没有删除我的情况下的旧框。我已经从虚拟框提供程序文件夹中删除了.vagrant文件夹和该框,但该框仍在vagrant global-status list

正如vagrant up命令给出的评论所述:

If you believe this message is in error, please check the process
listing for any "ruby" or "vagrant" processes and kill them. Then
try again.

所以我从进程列表中删除了ruby.exe并执行了后续的vagrant global-status --prune