#9655 closed defect (fixed)
Unable to start VM next time if snapshot creation failed in previous session => Fixed in SVN
回報者: | Donuts | 負責人: | |
---|---|---|---|
元件: | other | 版本: | VirtualBox 4.0.12 |
關鍵字: | 副本: | ||
Guest type: | Windows | Host type: | Linux |
描述 (由 作最後更新)
Hi,
When snapshot creation fails (e.g. due to lack of disk space), VirtualBox refuses to start the VM next time. That can be worked around by manually editing the .vbox file to remove the reference to the snapshot.
I was using an XP SP3 VM (with VirtualBox 4.0.12, Xubuntu 9.10 x86 host) and selected Take Snapshot... from the menu. That failed because there was not enough disk space. I continued to use the VM and eventually shut it down.
Next time I wanted to start the VM, the VirtualBox Manager showed this message:
Hard disk '/path_to_vdi/vm_name.vdi' with UUID {f2d2f9bd-bf1a-4cbb-ae12-8c279333d908} cannot be directly attached to the virtual machine 'vm_name' ('/path_to_vbox_file/vm_name.vbox') because it has 1 differencing child hard disks. Result Code: NS_ERROR_FAILURE (0x80004005) Component: Machine Interface: IMachine {662c175e-a69d-40b8-a77a-1d719d0ab062}
In the VM Snapshots directory, there is a file {aee182d7-b84e-489a-982d-09c0472bdd66}.vdi which is 266,240 bytes long.
Looking at the VBox.log file, there is this text:
00:05:28.449 Changing the VM state from 'RUNNING' to 'SUSPENDING'. 00:05:28.454 Changing the VM state from 'SUSPENDING' to 'SUSPENDED'. 00:05:32.626 Changing the VM state from 'SUSPENDED' to 'SAVING'. 00:05:33.624 SSM: Giving up: Low on disk space. (cbFree=10465280, SSM_MIN_DISK_FREE=10485760). 00:05:33.624 ssmR3StrmWriteBuffers: Write failed with rc=VERR_SSM_LOW_ON_DISK_SPACE at offStream=0x2e1b7e1 00:05:33.625 SSM: Execute save failed with rc=VERR_SSM_LOW_ON_DISK_SPACE for data unit 'pgm'/#1. 00:05:33.625 VUSB: attached 'aee9feb8[proxy 2304:0208]' to port 1 00:05:33.638 SSM: Failed to save the VM state to '/path_to_vm/vm_name/Snapshots/{4a1ac72d-f024-416b-ac5b-149ab6e5af68}.sav' (file deleted): VERR_SSM_LOW_ON_DISK_SPACE 00:05:33.638 Changing the VM state from 'SAVING' to 'SUSPENDED'. 00:05:33.638 ERROR [COM]: aRC=NS_ERROR_FAILURE (0x80004005) aIID={515e8e8d-f932-4d8e-9f32-79a52aead882} aComponent={Console} aText={Failed to save the machine state to '/path_to_vm/vm_name/Snapshots/{4a1ac72d-f024-416b-ac5b-149ab6e5af68}.sav' (VERR_SSM_LOW_ON_DISK_SPACE)}, preserve=false 00:05:39.120 Changing the VM state from 'SUSPENDED' to 'RESUMING'. 00:05:39.120 Changing the VM state from 'RESUMING' to 'RUNNING'.
In the .vbox VM file there is this:
<HardDisk uuid="{f2d2f9bd-bf1a-4cbb-ae12-8c279333d908}" location="/path_to_vdi/vm_name.vdi" format="VDI" type="Normal"> <HardDisk uuid="{aee182d7-b84e-489a-982d-09c0472bdd66}" location="Snapshots/{aee182d7-b84e-489a-982d-09c0472bdd66}.vdi" format="VDI"/> </HardDisk>
After deleting the line referring to the snapshot file, I was able to start the VM normally.
On a snapshot creation error, VirtualBox should remove any reference to the snapshot in the .vbox file (and delete any bogus/useless file in the Snapshots directory I guess).
Should be (finally) fixed in the next maintenance release after 4.1.14.