I have an old template VM that I would like to store for multiple clients to access it. Unfortunately (in this case), VirtualBox stores the pointer to the Hard Drive as a UUID instead of a file handle, so even if I load the machine into a VirtualBox client and "fix it up" (remove the Device from the VirtualBox XML file and then re-add it in client interface), any other user that tries to copy the machine and load it on his client will encounter the same error ("Could not find an open hard disk with UUID ...").
Do I have a way, in the XML or elsewhere to store the file handle to the disk in the VM configuration? I wouldn't mind even if the VirtualBox Manager "cleaned up" the configuration by associating a UUID with the disk on Add/import. I just want to have the template file(s) use the handle.
Target Filename instead of UUID in VM Configuration
Re: Target Filename instead of UUID in VM Configuration
It appears that VirtualBox does at least try to handle this in its config files. I guess in the older versions, VirtualBox didn't do this, but in my newer VM configurations, VirtualBox adds a MediaRegistry node (XPath: /VirtualBox/Machine/MediaRegistry) that associates the UUID (attribute in /VirtualBox/Machine/StorageControllers/StorageController/AttachedDevice/Image) with an actual file.
This satisfies the requirement that I had for my template machines.
This satisfies the requirement that I had for my template machines.