Como excluo uma VM no VirtualBox quando o disco rígido em que o arquivo VDI estava ativado é excluído?

23

Estou usando o VirtualBox hospedado no Windows 7 e o disco rígido físico em que estava um dos arquivos VDI da minha VM ficou completamente vazio e não existe mais.

O problema é que agora não posso excluir nem o disco rígido virtual nem a VM, uma vez que a tentativa de excluir o arquivo VDI gera um erro informando que o VirtualBox não consegue encontrar o arquivo e, é claro, não posso excluir a VM sem primeiro liberar ( ou excluindo) o arquivo VDI que aquela máquina estava usando.

ATUALIZAÇÃO: Observe que também removi todos os anexos de armazenamento e os instantâneos não podem ser excluídos pelo mesmo motivo - eles não conseguem encontrar os arquivos (por causa do disco rígido inexistente).

Alguém conhece uma solução?

gvkv
fonte

Respostas:

20

Exclua seus arquivos xml da VM no disco rígido. Eles estão localizados por padrão em C:\Users\YOUR_NAME\.VirtualBox\Machines.

Após a exclusão, você ainda receberá mensagens de erro estranhas no Virtualbox. Isso ocorre porque algumas informações sobre seus vms estão dentro C:\Users\YOUR_NAME\.VirtualBox\VirtualBox.xml.

Se você não se importa de perder algumas configurações globais no seu VirtualBox, basta excluir este arquivo. O Virtualbox criará outro se ele não existir.

Se você apenas deseja remover uma VM específica, precisa editar Virtualbox.xmlem algum editor xml (o bloco de notas está bom. O notepad ++ é melhor, pois possui destaque de sintaxe).

Você encontrará estes campos:

<MachineRegistry>
  <MachineEntry uuid="UUID" src="Machines\MACHINE_NAME\MACHINE_NAME.xml"/>
</MachineRegistry>
<MediaRegistry>
  <HardDisks>
    <HardDisk uuid="UUID" location="HardDisks\DISC_NAME.vdi" format="VDI" type="Normal"/>
  </HardDisks>
  <DVDImages>
    <Image uuid="UUID" location="C:\IMAGES\IMAGE.iso"/>
  </DVDImages>
  <FloppyImages/>
</MediaRegistry>

Remova o MachineEntry da VM desejada. Se você tiver apenas uma VM e quiser remover tudo, deixe as tags em branco. Por exemplo:

<MachineRegistry/>
<MediaRegistry>
  <HardDisks/>
  <DVDImages/>
  <FloppyImages/>
</MediaRegistry>

... e pronto. Acabei de testar tudo aqui e funciona perfeitamente. Se você deseja evitar problemas, faça backup dos arquivos de configuração xml do VirtualBox e VMs específicas.

(Não mencionei instantâneos, mas acredito que seja o mesmo princípio.)

GmonC
fonte
Você não precisa remover os instantâneos, pois estão contidos no diretório C: \ ... \ Machines \ MyVM.
gvkv
3

As instruções acima não resolveram o problema para mim. Eu queria remover uma máquina específica, nem todas. Eu não tinha mais uma MachineEntry para a máquina específica neste arquivo:C:\Users\YOUR_NAME\.VirtualBox\VirtualBox.xml

No entanto, a máquina ainda estava aparecendo no Virtual Media Manager, e não consegui removê-la daqui.

Reiniciar o VirtualBox também não funcionou.

O que funcionou: Reiniciando o VBoxSVC.exeprocesso e, em seguida, reiniciando o VirtuaBbox.

afaf12
fonte
1

Primeiro, exclua todos os instantâneos dessa máquina virtual. Em seguida, abra as configurações da máquina virtual, vá para a guia Armazenamento, clique com o botão direito do mouse no arquivo vdi em IDE Controller e clique em Remover anexo. Agora você deve conseguir remover o VDI do Virtual Media Manager.

insira a descrição da imagem aqui

Om Nom Nom
fonte
1
Não consigo remover os instantâneos e já removi os controladores.
gvkv