Você pode usar VBoxManage internalcommands sethduuid <VDI/VMDK file> (Executar no diretório de instalação do VBox) para alterar o HD UUID, mas isso tem duas falhas: ele não atualiza o arquivo .vbox e não altera o UUID da máquina (eu não encontrar qualquer maneira de fazer isso com o VBoxManage), apenas o HD UUID.
O seguinte funcionou para mim (Win 7, versão mais recente do VirtualBox):
- executar
VBoxManage internalcommands sethduuid <VDI/VMDK file>duas vezes (a primeira vez é apenas para gerar um UUID convenientemente, você poderia usar qualquer outro método de geração de UUID) - abra o arquivo
.vboxem um editor de texto - substitua o UUID encontrado em
<Machine uuid="{...}"pelo UUID que você obteve quando executousethduuidpela primeira vez - substitua o UUID encontrado em
<HardDisk uuid="{...}"e em<Image uuid="{}"(no final) pelo UUID obtido quando você executousethduuidpela segunda vez
Você pode adicionar a máquina virtual depois disso. Não é uma solução muito limpa, mas não parece causar nenhum problema.