Não é possível executar o Ubuntu nativo no VirtualBox com um vmdk criado usando o comando createrawvmdk com partições especificadas

4

Eu tenho um Win7 x64 & Ubuntu 11.10 x64 dual boot set-up em um único disco rígido.

Eu queria rodar o Ubuntu nativo como um sistema operacional convidado dentro da Virtual-box rodando no host Win7.

Eu usei o seguinte comando para listar as partições:

C:\ >vboxmanage internalcommands listpartitions -rawdisk \.\physicaldrive0
Number  Type   StartCHS       EndCHS      Size (MiB)  Start (Sect)
1       0x07  0   /32 /33  153 /27 /2           1200         2048
2       0x07  153 /27 /3   1023/254/63        363337      2459648
5       0x82  1023/254/63  1023/254/63          9537    746575872
6       0x83  1023/254/63  1023/254/63         46430    766107783
7       0x83  1023/254/63  1023/254/63         46431    861200384
4       0x07  1023/254/63  1023/254/63         10000    956291072

Em seguida, criei o arquivo vmdk da seguinte maneira (especificando as partições do Ubuntu 5,6 e 7):

C:> vboxmanage internalcommands createrawvmdk -filename "C:\ubuntu_01.vmdk" -rawdisk \.\physicaldrive0 -partitions 5,6,7


O arquivo vmdk foi criado com sucesso, mas quando eu criei uma VM e especifiquei esta unidade virtual, a VM não vai começar, há apenas uma tela preta em branco com um cursor branco no canto superior esquerdo. Ele nem aparece no menu de inicialização do Grub.

Então eu criei outro arquivo vmdk sem especificar as partições.

C:> vboxmanage internalcommands createrawvmdk -filename "C:\ubuntu_02.vmdk" -rawdisk \.\physicaldrive0

Desta vez, a VM é iniciada e o ubuntu inicializa com êxito a partir da VM (o menu de inicialização do grub 2 é apresentado e, ao selecionar o Ubuntu, é inicializado com êxito).

Como posso usar apenas as partições nativas específicas do ubuntu em vez de todo o disco para o sistema operacional Ubuntu no VirtualBox? Por favor ajude.

Anfitrião: Win 7 x64
Convidado: Ubuntu 11.10 x64
Versão Vbox: 4.1.6 r74713 com as últimas adições de convidados instaladas.

    
por Zaki 13.11.2011 / 19:41

4 respostas

4

Assim que você inicializa o Ubuntu a partir de um disco virtual "virtualizado" com o método mencionado, ele não encontrará o gerenciador de inicialização Grub como em sua configuração de inicialização dupla. O Grub provavelmente reside no MBR da primeira partição (de inicialização) disco rígido físico. A partir daí, o Grub decide a sua escolha para inicializar o Windows ou o Ubuntu.

Se você quer inicializar o Ubuntu a partir de uma máquina virtual, então você precisa de um gerenciador de inicialização (Grub) da mesma maneira que você precisa em um sistema real.

Para conseguir isso, você precisa instalar o Grub na sua partição Ubuntu ou você precisa criar uma pequena partição de inicialização para o Grub que possa ser facilmente adicionada à sua Máquina Virtual. Leia aqui e no Manual do GNU Grub para mais detalhes.

Warning: Both methods could break your dual boot setup or could make your Windows or Ubuntu system unbootable if you made something wrong.

O caminho seguro:

Uma maneira muito mais segura de ter acesso aos seus dados de host e convidados seria instalar o Ubuntu em seu próprio VDI de 10-15 GB e apenas montar seu host /home no sistema operacional convidado para acesso de dados. Ao fazer isso, você também poderá carregar os módulos do host ou do convidado sem quebrar a instalação do host do Ubuntu.

    
por Takkat 13.11.2011 / 23:06
4

Eu encontrei uma solução perfeitamente funcionando. sda7 é a partição onde instalei o linux, 5,6,7 é a partição nativa que quero virtualizar e "ceztko" é a minha casa: P

  • do linux nativo , reinstale o grub na partição nativa do linux : %código%
  • copie o setor de inicialização da partição para sua casa: %código%
  • copie sudo grub-install --force /dev/sda7 para sua instalação do Windows
  • Reinicie para o Windows e a partir do prompt do Administrador:

    # dd if=/dev/sda7 of=/home/ceztko/virtualbox-native.mbr bs=512 count=1

  • Execute o VirtualBox e atribua a nova unidade virtual à máquina virtual.
  • Aproveite!

Isso pode ser um bug no Virtualbox. Mas melhor eu acho que é um bug no grub, confuso com as partições do Windows não acessíveis quando instalado como mbr no disco de inicialização.

    
por ceztko 19.04.2012 / 13:02
1

Eu tive um problema semelhante e resolvi um pouco diferente, ou seja, sem inicializar no Linux nativo.

Se você especificou o parâmetro -partitions para o disco raw .vmdk, uma imagem do MBR e alguns setores subseqüentes também serão criados, os quais você pode sobrescrever diretamente no Linux virtual sem afetar os setores físicos originais. Verifique o arquivo vmdk para referência. No meu caso, a imagem plana cobriu os primeiros 32kb.

Para inicializar no Linux virtual pela primeira vez, você pode usar, por exemplo, a imagem ISO SuperGrubDisk . Após uma inicialização bem-sucedida, corrija o MBR da instalação local no ambiente virtual, como de costume.

Note que se você quiser instalar o grub no seu MBR virtual, pode ser que o MBR não seja grande o suficiente para caber em toda a imagem do grub. Você perceberá isso apenas se tentar inicializar o sistema. Neste caso você pode ampliar a imagem plana representando os primeiros setores do seu disco rígido. Você precisa adaptar o arquivo .vmdk adequadamente.

    
por user1149304 26.05.2012 / 21:44
0

A solução completa:

O local normal de um carregador do SO, o Grub é um, está "na PBR", dentro da partição. E esse é o lugar mais seguro contra sua destruição, em vez de expô-lo no MBR.

E isso faz com que o Linux inicialize da maneira convencional, carregando o PBR e executando-o. GAG é um bom programa para multi-boot e / ou para iniciar partições lógicas. É melhor obtê-lo em um CD como SystemRescueCd , juntamente com uma série de ferramentas. Grave o CD ou use o arquivo ISO e inicialize-o, selecione GAG e configure-o.

Se você não suspender / retomar 6 meses se o Linux permitir, o Tux vai cumprimentá-lo todos os dias. Obrigado pela dica de que o GAG irá reescrever esse MBR virtual.

E se você puder entrar em contato com o autor do GAG, diga a ele:

  1. Meus eternos agradecimentos
  2. Ele deve iniciar a configuração com uma tela principal totalmente preenchida e deixar excluir, reorganizar e modificar os ícones. Isso torna uma configuração já utilizável imediatamente, em vez de ter que fazer muitas manipulações para começar.
por Papou 29.04.2013 / 04:51