[vbox-dev] <MediaRegistry> section dormant bug issue?

Kalogrianitis Socratis socratisk at gmail.com
Fri Feb 8 08:42:19 UTC 2019


Here's a weird problem that I discovered, which could be potentially really serious. It involves the <MediaRegistry> section. I found the problem while taking a look at my VirtualBox.xml. In there, I found the following, right after the end of the MachineRegistry section. There were 3 HarDisk entries, but I'll show only one for brevity. This is from a Win7 VM that I've had for ever (since 4.x). It has one snapshot:

...
</MachineRegistry>
<MediaRegistry>
  <HardDisks>
	<HardDisk uuid="{3bee1763-6df5-44e3-9668-4d21aeb1d008}" location="/Users/Shared/VirtualBox/Machines/Windows 7/Windows 7.vdi" format="VDI" type="Normal">
	  <HardDisk uuid="{800cad41-7935-4840-83f4-b81d2f4af813}" location="/Users/Shared/VirtualBox/Machines/Windows 7/Snapshots/{800cad41-7935-4840-83f4-b81d2f4af813}.vdi" format="VDI"/>
	</HardDisk>
  </HardDisks>
</MediaRegistry>
<NetserviceRegistry>
...

Now, that MediaRegistry section (perfectly fine looking) was *missing* from the Windows7.vbox where it should be in the first place! Every time I would revert the VM to the previous snapshot, the {snapshot}.vdi entry would change in the VirtualBox.xml, because it was obviously missing from the corresponding Windows7.vbox.

This weird Frankenstein-like combination of MediaRegistry entries was actually working. When I say "combination" I mean that given the number of VMs that I have, it seems that there's a sum of MediaRegistry entries from the VirtualBox.xml and the all the *.vbox ones. That's why there wasn't actually an operating problem.

The problem is that this VM was *NOT* portable/movable/backupable. I couldn't simply take the VMfolder to another computer, because the .vbox was missing its MediaRegistry section! Oops! And since that's the way that I backup my VMs to an ext. HD, this could lead to serious trouble. That VM simply wouldn't work!

Anyone care to explain how this monstrosity may have come to life?

As always available on the #vbox channel for any questions...

Socratis


More information about the vbox-dev mailing list