I have a old Win XP system running as a Virtualbox guest on a linux host. The image is really large because of an (apparent) large winsxs directory on the windows guest.
I know that this is due to the fact that because of the hardlinks the size is not calculated correctly, but on the linux host, this space is really occupied.
Using vboxmanage's compact (after an sdelete on the win guest) command on the linux host doesn't help:
vboxmanage modifymedium --compact /path/to/thedisk.vdi
So what can I do about this?