Mat*_*hen 61 virtualization virtualbox vagrant
如何在GURU_MEDITATION错误状态下删除VirtualBox机器?只是在VirtualBox没有运行时删除目录就够了吗?
编辑:发布后,我删除了"在文件管理器中显示"导航到的整个目录.
看起来像:

请注意,没有断电,甚至删除都是灰色的.我相信这与我删除目录之前的情况完全相同.
编辑2:我删除文件后尝试命令行poweroff.它挂起:
vboxmanage controlvm wmf-vagrant_1354733432 poweroff 0%... 10%... 20%......
编辑3:它也无法从命令行取消注册:
VBoxManage unregistervm wmf-vagrant_1354733432 - 删除VBoxManage:错误:无法注销机器'wmf-vagrant_1354733432'当它被锁定VBoxManage:错误:详细信息:代码VBOX_E_INVALID_OBJECT_STATE(0x80bb0007),组件机器,接口IMachine,被调用者nsISupports上下文:"取消注册( fDelete?(CleanupMode_T)CleanupMode_DetachAllReturnHardDisksOnly:(CleanupMode_T)CleanupMode_DetachAllReturnNone,ComSafeArrayAsOutParam(aMedia))"在文件VBoxManageMisc.cpp的第160行
jon*_*han 126
杀死VBoxHeadless进程并运行" vagrant destroy "
使用"killall"命令销毁vagrant并发送kill信号如下:
killall -9 VBoxHeadless && vagrant destroy
Wil*_*ass 10
我遇到了这个问题.我读过的Eveything建议您应该始终通过Virtual Box管理这些框,而不是直接访问文件.但是当我有一个无效的盒子时,unregistervm命令拒绝删除它,并且vagrant destroy不起作用.最后,以下过程有效.
然后我运行此命令验证框已消失.
VBoxManage list vms
Run Code Online (Sandbox Code Playgroud)
之后,我能够创建一个具有相同名称的新vm.
如果无法从VirtualBox GUI关闭机器,请尝试从命令行使用vboxmanage命令(VBoxManage在OS X上),例如:
vboxmanage controlvm NAMEOFVM poweroff
Run Code Online (Sandbox Code Playgroud)
NAMEOFVM从vboxmanage list vms命令更改名称.
然后取消注册并删除VM:
vboxmanage unregistervm NAMEOFVM --delete
Run Code Online (Sandbox Code Playgroud)
或者手动删除:
rm -fr ~/"VirtualBox VMs/NAMEOFVM"
Run Code Online (Sandbox Code Playgroud)
我有一个处于类似状态的虚拟机
$ vagrant up
Bringing machine 'tempu' up with 'virtualbox' provider...
==> mms: Checking if box 'hashicorp/precise64' is up to date...
==> mms: Resuming suspended VM...
==> mms: Booting VM...
There was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.
Command: ["startvm", "9fcf2203-d4b3-47a1-a307-61bfa580bd28", "--type", "headless"]
Stderr: VBoxManage: error: The machine 'temp-ubuntu' is already locked by a session (or being locked or unlocked)
VBoxManage: error: Details: code VBOX_E_INVALID_OBJECT_STATE (0x80bb0007), component Machine, interface IMachine, callee nsISupports
VBoxManage: error: Context: "LaunchVMProcess(a->session, sessionType.raw(), env.raw(), progress.asOutParam())" at line 592 of file VBoxManageMisc.cpp
Run Code Online (Sandbox Code Playgroud)
我查找了一个名为 的进程VBoxHeadless,但它没有运行。
然后我运行ps并发现该进程具有相同的虚拟机 ID:
$ ps aux | grep -i virtualbox
user 63466 0.0 0.1 2523608 8396 ?? S 9:36am 0:02.67 /Applications/VirtualBox.app/Contents/MacOS/VBoxManage showvminfo 9fcf2203-d4b3-47a1-a307-61bfa580bd28 --machinereadable
Run Code Online (Sandbox Code Playgroud)
终止该进程解决了问题,并且虚拟机在运行后正确启动vagrant up
我在 64 位多处理器主机上使用 Debian Wheezy。我最终通过删除所有 VirtualBox 数据解决了这个问题(尽管您不需要删除 Vagrant 基础框):
可能有一种破坏性较小的方法(例如仅删除这些目录的一部分)。就我而言,幸运的是我当时只使用一台虚拟机。
| 归档时间: |
|
| 查看次数: |
39718 次 |
| 最近记录: |