删除vagrant缓存中的vms列表

时间:2014-06-26 20:59:46

标签: vagrant

我不是在寻找this回答,因为我的问题不同。

当我输入vagrant global-status时,我会收到一个vms列表,但其中一些目录和VM已与Vagrantfiles一起删除。

但是当我输入vagrant destroy [machineid]时,我收到以下错误,我希望解决此问题。请告知。

The working directory for Vagrant doesn't exist! This is the
specified working directory:

/Users/steven/projects/php/vagrant-laravel

5 个答案:

答案 0 :(得分:243)

您应该使用以下命令从全局索引中删除无效条目:

vagrant global-status --prune

答案 1 :(得分:16)

我也有这个问题。我能够通过修改~/.vagrant.d/data/machine-index/index的内容来修复它。它采用JSON格式,因此我只删除了与不再存在的实例相关的数据。

我只删除了与不再存在的实例相关的数据。我不会修改与文件系统中存在的实例相关的任何数据。

答案 2 :(得分:11)

--prune对我不起作用。我删除了~/.vagrant~/.vagrant.d.vagrant。并手动删除延迟的虚拟机。

我从原始gems迁回boxes~/.vagrant.d。也许只能尝试从.vagrant移除机器,但我没有测试过。

答案 3 :(得分:1)

使用vagrant box remove -f [name]

有效。保证!

答案 4 :(得分:0)

我用过

vagrant global-status --prune
vagrant box remove -f [name]

我也删除了

~/.vagrant, ~/.vagrant.d and .vagrant. 

并手动删除残留的VM(如果存在)。