VirtualBox

Ticket #4661 (new defect)

Opened 5 years ago

VirtualBox creates folder in /Volumes/ directory when disk with virtual machines is not present

Reported by: Tell Owned by:
Priority: major Component: other
Version: VirtualBox 3.0.2 Keywords:
Cc: Guest type: other
Host type: Mac OS X

Description

Steps to reproduce problem under Mac OS X

  1. Connect external hard drive
  2. Specify that VirtualBox should use this drive as Default Hard Disk and Default Machine folder (in my case "/Volumes/Hosomaki/VirtualBox/HardDisks", a volume called "Hosomaki")
  3. Create virtual machine A on external drive
  4. Shut down VirtualBox and disconnect/umnount external drive
  5. Start up VirtualBox. Machine A is unavailable, as expected.
  6. Create new virtual machine B. This is where VirtualBox fails and creates the folder called "/Volumes/Hosomaki/" and subdirectories, as they do not exist. (Optionally install and set up machine B). Exit VirtualBox
  7. Reconnect external drive. Mac OS X fails to mount disk at proper mount point since VirtualBox has created a folder here. Mac OS X mounts the drive (in my case) as /Volumes/Hosomaki 1/
  8. Start VirtualBox. Machine A is now permanently unavailable with the following error message:
Assertion failed at '/Users/vbox/tinderbox/3.0-mac-rel/src/VBox/Main/MachineImpl.cpp' (5034) in nsresult Machine::loadSettings(bool).
Unexpected exception 'N3xml11EInvalidArgE' (In 'xml::File::File(RTFILE, const char*)', '/Users/vbox/tinderbox/3.0-mac-rel/src/VBox/Main/xml/xml.cpp' at #207).
Please contact the product vendor!.
Result Code: 
NS_ERROR_FAILURE (0x80004005)
Component: 
VirtualBox
Interface: 
IVirtualBox {3f4ab53a-199b-4526-a91a-93ff62e456b8}

Temporary fix

The problem is resolved by:

  1. Mounting the external drive. In Finder, navigate to /Volumes/ with Go -> "Go to Folder...".
  2. Move files from the folder with the same name as the disk to the corresponding folders on the disk.
  3. Delete the folder.
  4. Unmount and remount drive.
  5. Start VirtualBox. Enjoy.

Resolution

VirtualBox should be modified so that it never creates folders directly under /Volumes/ on Mac OS X. If the path to the default disk and machines stores do not exist, VirtualBox should present an error message saying so.

VirtualBox should also be modified so that it presents a more human-readable error message when a machines configuration file is not found. The above included error message is very complicated versus for example "VirtualBox could not find the machine at the specified location. It may have been moved or deleted. Would you like to try to locate the files yourself, or would you like VirtualBox to remove the virtual machine from the inventory?" with options (Ignore, Delete Machine, Locate files).

Note: See TracTickets for help on using tickets.

www.oracle.com
ContactPrivacy policyTerms of Use