Como copiar / mover a máquina virtual do VirtualBox para outro computador?

0

Eu atualizei para o Windows 10 fazendo o backup tudo do antigo Windows antigo e, em seguida, instalei com um formato limpo; tudo fresco.

Eu tenho um Debian 8.1 no Virtual Box, que também foi salvo completamente; não apenas a imagem do disco.

Eu instalo o VirtualBox e começo de novo essa máquina e surpreendo, o Debian reclama por não conseguir encontrar a partição raiz (não existe uma partição com esse UUID), cai em um pequeno shell e se recusa a inicializar.

Suspeitei que as entradas em fstab não estão mais corretas, então inicializei uma distro ao vivo e verifiquei ... blkid relatar os mesmos UUIDs em fstab

Então, qual é o truque?!?

No VMware eu tenho não tenho esse problema se eu copiar / mover máquinas, reinstalar o VMware, etc., ele vai perguntar se é copiado ou movido e nunca tive nenhum problema como este.

P.S. Por favor, não marque esta questão como um dupe, eu li " Qual é a maneira recomendada de mover uma VM do VirtualBox para outro computador? " e tentou a opção 2 neste pergunta Eu copiei todos os arquivos e coloquei-os no lugar certo. Novamente, inicializando um Linux ao vivo naquela máquina virtual, vejo o disco rígido com o UUID adequado.

    
por THESorcerer 25.09.2015 / 10:42

2 respostas

1

Bem, eu diria que é melhor você exportar sua VM (para o contêiner .ova ) antes de limpar o sistema host e importá-lo depois - o VirtualBox pode fazer isso a partir de sua GUI.

Mas, voltando à sua pergunta ... eu lembro que o VirtualBox tem um "registro" separado para todas as mídias que suas VMs usam. IIRC, é armazenado em um arquivo XML em algum lugar sob o perfil do usuário atual.

Então, eu começaria abrindo a janela de gerenciamento de mídia da GUI VBox e me certificando que o disco do Debian realmente existe e é conhecido pelo gerenciador de mídia do VBox.

A próxima coisa a verificar depois disso seria ir às propriedades da VM e garantir que a mídia que representa o disco rígido da VM esteja disponível e tenha o status "OK".

Se a inicialização da VM falhar, faça o seguinte: quando for apresentada a janela do GRUB (carregador de inicialização do Debian) durante a inicialização (pós-BIOS), pressione e (ou o que for sugerido - nunca me lembro para editar a entrada de boot para o seu sistema - você será presenteado com a linha de comando passada pelo gerenciador de inicialização para o kernel, e contém o parâmetro chamado "root" (significando o sistema de arquivos raiz). Atualmente, o argumento para root contém algum nome de dispositivo codificado por UUID, e assim a coisa toda parece com algo como

/boot/vmlinuz-3.2.0-4-amd64 root=UUID=2cb5a97c-75ab-4c8b-afd9-19297e3553bd ro single

Você deve substituir essa UUID=blah... part por /dev/sda1 para que ela leia algo como

/boot/vmlinuz-3.2.0-4-amd64 root=/dev/sda1 ro single

e provavelmente irá arrancar apenas OK.

(Observe que o caminho para o arquivo do kernel, /boot/vmlinuz-3.2.0-4-amd64 é do meu sistema; no seu, pode ser diferente - não mexa nele, você deve tocar apenas no parâmetro root= ).

Observe que /dev/sda1 significa a primeira partição primária no primeiro disco rígido (SATA / SCSI). Se você tem sua partição raiz em outro lugar, você tem que descobrir isso. Se você não tem idéia do que é isso, tente 2 , 3 etc até que funcione.

Quando o sistema inicializar, execute

# dpkg-reconfigure grub-pc

para reconfigurar o GRUB para que ele use o nome correto do dispositivo para o sistema de arquivos raiz.

Você também pode precisar corrigir o arquivo /etc/fstab se o UUID do dispositivo tiver realmente mudado. Para fazer isso, execute

# blkid /dev/sda1

e substitua o valor de UUID na entrada do fstab apropriado pelo reportado por blkid no valor UUID .

O número nesse /dev/sdN deve obviamente corresponder ao que funcionou para você como o parâmetro root= do kernel.

    
por 25.09.2015 / 17:59
0

Se essa mensagem que você recebe depois de mover a máquina virtual e tentar iniciá-la é algo assim:

Failed to open the hard disk .

Cannot register the hard disk becuase a hard disk with UUID already exists.

Em seguida, vá para o diretório da sua máquina virtual; é claro, altere o caminho real para corresponder ao caminho real em que você está entrando:

cd /full/path/to/virtualbox/virtualmachine/Sandbox

E execute este comando para atribuir ao disco um novo UUID:

VBoxManage internalcommands sethduuid Sandbox.vdi
    
por 25.09.2015 / 18:41