20

我应该如何使用命令vagrant destroy

在我使用的 VagrantFile 中vm.config.name = 'websvr',当我打开 Virtualbox 时,我可以在 Vm 列表中看到 websvr。

但是每当我使用vagrant destroy websvr它时,它都会返回:

找不到为此 Vagrant 环境配置的名为“websvr”的机器。

如何vagrant destroy工作?

4

5 回答 5

40

似乎该项目不存在,但它出现在列表中,因为它存在于缓存中。用来vagrant global-status --prune摆脱它。

有关更多详细信息,请参阅vagrant global-status 文档

于 2015-02-19T19:08:24.440 回答
8

让我们在命令行中尝试这些操作

    1. 通过调用检查可用的已安装框

      vagrant box list

    1. 查找框 id

      vagrant global-status --prune

    1. 按您的盒子的 id 名称选择进行销毁。

      vagrant destroy 1a2b3c4d

这就是你的全部。vagrant destroy xxxxxxx现在您可以通过此命令销毁您的流浪盒。

于 2018-11-07T17:20:34.033 回答
3

首先尝试运行vagrant status,它应该列出所有虚拟机及其当前状态(正在运行、未创建等)

VM 的名称显示在第一列中,并且区分大小写。

例如,这是vagrant status我机器上的输出:

base                       not created (virtualbox)
git                        not created (virtualbox)
go                         not created (virtualbox)
dev_workstation            not created (virtualbox)
single_instance            not created (virtualbox)
metrics                    not created (virtualbox)
于 2014-04-27T17:38:07.417 回答
2

彻底清理 VM 并从头开始——以下内容对我有用——基本上结合了其他人已经说过的话。

  1. 使用 vagrant 在本地检查 VM 状态,如果存在则销毁 - 全部在 vagrant 文件夹中完成 - 确保您位于正确的文件夹中!

    $ vagrant status
    $ vagrant destroy
    $ rm -rf .vagrant
    
  2. 使用 vagrant 全局检查 VM 状态,如果存在则“销毁” - 可以在任何地方完成

    $ vagrant global-status
    $ vagrant global-status --prune
    
  3. 使用 VirtualBox 的视角检查 VM 状态并取消注册 VM

    $ vboxmanage list vms   
    ### note down long id, eg. c43266e6-e22b-437a-8cc1-541b7ed5c4b
    
    $ vboxmanage unregistervm <long id> --delete
    
  4. 返回到适当的 vagrant 文件夹并启动 VM

    $ vagrant up
    
于 2019-08-08T15:34:04.990 回答
1

要摧毁流浪者,您可以尝试以下简单步骤:

  1. 如果您已经在运行 vagrant ssh 命令,则需要退出 ssh,您可以输入 exit 退出 vagrant ssh。
  2. 一旦你脱离了流浪者类型:
vagrant destroy -f.

如果这些对您不起作用,您可以使用 bash 进行尝试。

跳转到实际代码所在的项目文件夹。在此处右键单击并按 git bash。您将看到一个 bash 窗口弹出,因此只需在 bash 窗口中输入相同的命令:vagrant destroy -f

我希望这些简单的步骤对你有用。

于 2019-08-09T20:08:33.553 回答