62

我删除了包含 .vagrant 文件的目录。当我启动一个新虚拟机时,它抱怨端口正在使用中。那么如何在没有 .vagrant 文件的情况下销毁 VM?

4

4 回答 4

98

以下 VirtualBox 命令可能会有所帮助。如果 poweroff 不起作用,请尝试 unregistervm。

$ VBoxManage list runningvms
$ VBoxManage controlvm <uuid> poweroff
$ VBoxManage unregistervm <uuid>

资料来源: https: //support.cloud.engineyard.com/entries/21449637-I-deleted-Vagrantfile-vagrant-and-or-the-app-directory-before-halting-the-VM-Now-ey-local-向上错误-

用于停止所有正在运行的虚拟机的 Shell 脚本:

VBoxManage list runningvms | awk '{print $2;}' | xargs -I vmid VBoxManage controlvm vmid poweroff
于 2013-03-14T13:08:48.880 回答
30

最简单的做法是启动 VirtualBox 的 GUI 客户端并删除(可能在关闭后)虚拟机。您只需右键单击虚拟机并执行这些操作。

在此处输入图像描述

于 2013-04-01T16:47:36.420 回答
6

以下 bash 函数将关闭并销毁与当前用户的所有 VM 相关的所有文件:

function killvms() {
  VBoxManage list runningvms | awk '{print $2;}' | xargs -I vmid VBoxManage controlvm vmid poweroff
  VBoxManage list vms | awk '{print $2;}' | xargs -I vmid VBoxManage unregistervm --delete vmid
}

将它添加到你的~/.bash_aliases并通过在你的 shell 中调用它killvms

于 2017-06-14T09:07:20.400 回答
0

如果您使用 GUI 删除了 VM,但仍然出现错误,您可以尝试从“%userprofile%\VirtualBox VMs”中删除命名的 VM。这对我有用

于 2015-02-15T18:17:06.897 回答