How do I remove a Vagrant box from global-status, after deleting that box from the filesystem?

VagrantVirtualbox

Vagrant Problem Overview


I deleted a folder containing a running Vagrant box before realising it was still running.

How can I delete it from Vagrant (global-status) now?

I already removed the Virtualbox VM.

Vagrant Solutions


Solution 1 - Vagrant

To discard old boxes listed in vagrant global-status (eg. you deleted the folder containing the .vagrant dir from the filesystem) you just need to run:

vagrant global-status --prune

You might need to remove the Virtual Machine directly from your provider (VMWare, Virtualbox, ..) control interface.

Solution 2 - Vagrant

I believe that the new filename of the global data is ~/.vagrant.d.

So you can run rm -r ~/.vagrant.d to delete all user data for a fresh start.

Solution 3 - Vagrant

For my case: Where kitchen and .kitchen/ folder may contain hidden vagrant files create by

$ kitchen create

I need to go further than either kitchen destroy or vagrant destroy or even vagrant destroy machineID ( from vagrant global-status - which gives a list of vagrant instances across your user space. )

In my case, I had to blow away the vagrant machine lock files contained in the users .vagrant hidden directory.

$ rm -r ~/.vagrant/data

And in my case I need to sudo the above command.

Then I finally got to a clean

$ vagrant global-status

list

Solution 4 - Vagrant

First you use vagrant global-status to list all the vagrant machines and their status and ids.

then you can use:

 vagrant destroy -f the_id_of_the_machine

after that if you run vagrant global-status again you will find that the id you have specified in the vagrant destroy -f command has been removed from the list.

and then you might need to restart your machine However these commands will not affect your boxes.

Solution 5 - Vagrant

The above commands didn't remove the old box in my case on a Windows machine. I had already removed the .vagrant folder and the box from the virtualbox provider folder but the box was still in the vagrant global-status list.

As mentioned in the comment given by a vagrant up command:

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.

So I killed ruby.exe from the process list and did a subsequent vagrant global-status --prune.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionmettjusView Question on Stackoverflow
Solution 1 - VagrantJon DowdleView Answer on Stackoverflow
Solution 2 - VagrantAlex PhelpsView Answer on Stackoverflow
Solution 3 - VagrantTerry J FundakView Answer on Stackoverflow
Solution 4 - VagrantAmr AlyView Answer on Stackoverflow
Solution 5 - VagrantulrichView Answer on Stackoverflow