问题
I ran a test-kitchen instance and all was fine, but at the end when I did try to destroy it kitchen with:
roberto@pc:~$ kitchen destroy
Virtualbox gave me this error.
-----> Starting Kitchen (v1.1.1)
-----> Destroying <default-ubuntu-1204>...
[default] Destroying VM and associated drives...
>>>>>> ------Exception-------
>>>>>> Class: Kitchen::ActionFailed
>>>>>> Message: Failed to complete #destroy action: [Expected process to exit with [0], but received '1'
---- Begin output of vagrant destroy -f ----
STDOUT: [default] Destroying VM and associated drives...
STDERR: There was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.
Command: ["unregistervm", "2507bc77-3734-429b-a573-d92fadb80e95", "--delete"]
Stderr: VBoxManage: error: Cannot unregister the machine 'default-ubuntu-1204_default_1391521776' while it is locked
VBoxManage: error: Details: code VBOX_E_INVALID_OBJECT_STATE (0x80bb0007), component Machine, interface IMachine, callee nsISupports
VBoxManage: error: Context: "Unregister(CleanupMode_DetachAllReturnHardDisksOnly, ComSafeArrayAsOutParam(aMedia))" at line 158 of file VBoxManageMisc.cpp
---- End output of vagrant destroy -f ----
Ran vagrant destroy -f returned 1]
>>>>>> ----------------------
>>>>>> Please see .kitchen/logs/kitchen.log for more details
I ran Virtualbox and I can not removed the instance because it also was locked and the close option was disable.
Anyone else with this problem?
回答1:
There are two things that can cause this issue. Please ensure:
- You restart your computer after installing/updating VirtualBox
- Please make sure you manually open VirtualBox at least once before using the driver
If the machine appears in the list of Virtual Machines in the VBox GUI, try the command again. If they are not listed in the VirtualBox GUI, remove the .kitchen
directory and try again.
回答2:
VBoxManage: error: Cannot unregister the machine 'X' while it is locked.
It's locked, because it's in use, so basically you need to shut it down, e.g.
VBoxManage controlvm VMNAME poweroff
Change VMNAME
to your machine name, e.g. default-ubuntu-1204_default_1391521776
.
Then you can unregister via:
VBoxManage unregistervm VMNAME --delete
Specifying --delete
will delete your VM. If you don't want to delete it, you can make a backup from ~/"VirtualBox VMs/VMNAME
.
来源:https://stackoverflow.com/questions/21606567/virtualbox-is-locked-when-i-try-to-destroy-a-kitchen-instance