我删除了包含.vagrant文件的目录。当我启动一个新VM时,它抱怨正在使用的端口。那么如何在不使用.vagrant文件的情况下销毁虚拟机?
答案 0 :(得分:94)
以下VirtualBox命令可能会有所帮助。如果poweroff不起作用,请尝试unregistervm。
$ VBoxManage list runningvms
$ VBoxManage controlvm <uuid> poweroff
$ VBoxManage unregistervm <uuid>
用于停止所有正在运行的vms的Shell脚本:
VBoxManage list runningvms | awk '{print $2;}' | xargs -I vmid VBoxManage controlvm vmid poweroff
答案 1 :(得分:29)
最简单的方法是启动VirtualBox的GUI客户端并删除(可能在关闭之后)虚拟机。您只需右键单击虚拟机并执行这些操作即可。
答案 2 :(得分:2)
以下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
并通过killvms
在您的shell中调用它。
答案 3 :(得分:0)
如果您使用GUI删除了VM并且仍然收到错误,则可以尝试从“%userprofile%\ VirtualBox VMs”中删除指定的VM。这对我有用