Use sua partição do Bootcamp sem precisar sair do Mac OS X

Eu gosto do Mac e acho que quase tudo que eu usava no Windows tem uma versão ou uma alternativa que rode nativamente nele. No entanto, há algumas poucas coisas que não consigo fazer com ele. O Visual Studio, por exemplo, é um dos programas que eu acho que não vão ser portados para Mac tão cedo.

Uma solução é gastar R$200,00 no Parallels e mais R$90,00 a cada atualização para poder rodar o Windows de dentro do Mac. A performance não é ruim, mas eu acho muito caro e, se você deixar de comprar uma atualização, não tem direito a comprar uma outra com desconto. A política da Parallels não é das que mais pensam no consumidor, muito pelo contrário e, talvez por isso, tantas pessoas têm migrado para soluções mais baratas ou grátis, como VMWare e Virtualbox.

Outra solução para isso é instalar o Windows em numa partição através do Bootcamp e, quando quiser usar o Windows, reiniciar o computador por ele. Desta forma a performance é igual à de um Windows sendo executado num PC, já que não está sendo executado em conjunto com o Mac OS X. O que acontece é que há vezes que você precisa fazer uma coisa rápida no Windows e gostaria de poder rodar o programa sem ter que reiniciar o computador.

Ontem eu consegui fazer o VirtualBox, que é gratuito, executar o Windows da minha partição do Bootcamp de dentro do Mac, sem precisar criar outra imagem de disco. Desta forma ele acessa a própria partição para executar o Windows e você não precisa sair do Mac e parar o que está fazendo lá.

Este tutorial supõe que você já tenha o Windows instalado numa partição e que consiga usá-lo pelo Bootcamp. Eu estou usando o Mac OS X 10.9.5 e o VirtualBox 4.3.16. Além disso, você precisa ter coragem para usar o terminal do seu Mac. 🙂

1. Instale o VirtualBox no seu Mac:
Vá ao site do VirtualBox e baixe a última versão para Mac OS X. O link é este aqui. https://www.virtualbox.org/wiki/Downloads

2. Verifique as partições do seu disco:
Depois de instalar o VirtualBox, abra o Terminal (Eu costumo abrir pelo Spotlight) e digite o seguinte comando:

sudo diskutil list

O programa vai pedir uma senha. Use a sua senha de login no Mac.
A resposta será algo assim (dependendo do seu disco):

/dev/disk0
   #: TYPE NAME SIZE IDENTIFIER
   0: GUID_partition_scheme *500.1 GB disk0
   1: EFI EFI 209.7 MB disk0s1
   2: Apple_HFS Macintosh HD 370.5 GB disk0s2
   3: Apple_Boot Recovery HD 650.0 MB disk0s3
   4: Microsoft Basic Data BOOTCAMP 128.8 GB disk0s4

No caso do meu disco, a partição do meu Windows é a número 4 e usa o device disk0s4, que está em /dev/disk0s4

Atenção: Guarde esta informação acima. Eu vou usar /dev/disk0s4 até o fim do post, mas esse valor pode ser diferente no seu. Use o disco que estiver a sua partição do Bootcamp.

3. Desmonte a partição do Bootcamp.
Por padrão, o Mac monta a partição do Bootcamp toda vez que inicia. No terminal, digite o seguinte:

sudo umount -f /Volumes/Bootcamp

4. Mude as permissões de acesso do /dev/disk0s4.
O Windows ou o Bootcamp protegem a partição cada vez que você inicia o computador por ele, mas o VirtualBox precisa ter acesso total a ela para funcionar. Execute o comando abaixo no terminal:

sudo chmod 777 /dev/disk0s4

5. Crie um disco virtual que aponte para a partição do Windows.
Em seguida, crie o disco Virtual. Não se preocupe com espaço, ele não vai copiar a partição inteira para esse disco virtual, só vai fazer dois arquivos para guardar as informações de acesso à partição.
No terminal digite o seguinte comando:

sudo VBoxManage internalcommands createrawvmdk -filename Win7.vmdk -rawdisk /dev/disk0 -partitions 4
Atenção de novo! o parâmetro /dev/disk0 está certo. Não mude!
O número 4, logo depois de -partitions, é o número da sua partição do Windows.

Este comando irá criar dois arquivos na sua pasta Home, Win7.vmdk e Win7-pt.vmdk. Não mude de pasta esses arquivos!

6. Mude a permissão dos arquivos criados.

No terminal, digite o seguinte comando, trocando [[NOME DO SEU USUARIO]] pelo nome do seu usuário.

sudo chown [[NOME DO SEU USUARIO]] *.vmdk

Caso você não execute esse passo ou não execute o passo 4, você vai receber uma mensagem de erro do VirtualBox com o seguinte código: VERR_ACCESS_DENIED

Estamos quase lá! Coragem!

7. Crie a máquina virtual no VirtualBox

Inicie o VirtualBox e crie uma nova Máquina Virtual chamada “Win7” e selecione a versão do seu Windows (no meu caso era Windows 7 64bits). Eu coloquei um pouco mais de memória que o recomendado (512MB). Sugiro que você coloque pelo menos 1024, ou mais, se seu Mac permitir.

Na hora de escolher o disco, marque a opção “Do not add a virtual hard drive”. Nós faremos isso depois. Ele vai reclamar que não tem disco. Basta clicar em Continuar.

8. Configure a máquina virtual e adicione o disco virtual

Selecione a máquina virtual Win7 e clique em “Settings”. Clique em “System” e depois em “Processor”. Aumente para 2 o número de CPUs para você ter mais performance.

Depois clique em “Display” e aumente a memória para 128MB e marque as duas “Extended features”.

Por último clique em Storage. Selecione Controller: IDE. Mude o type para ICH6 (pelo que eu li, não funciona direito com PIX3 ou PIX4).

Depois clique em “Add attachment” (um disquete com um +) e escolha add Hard Drive. e clique em “Choose existing disk”. Vá para a pasta que você salvou o arquivo Win7.vmdk (se você fez como eu falei acima, ele está na sua pasta Home) e escolha ele.

Clique em “Ok” e corra para o abraço! Você já pode iniciar sua máquina virtual. Clique em Start e veja que maravilha!

9. Crie um script para liberar as permissões antes de executar o VirtualBox

Toda vez que você reinicia o computador, o Mac monta a partição do Bootcamp e muda as permissões para protegê-la. Para executar o seu Windows sem precisar entrar no terminal toda hora, crie um Apple Script conforme abaixo e salve no seu Desktop:

--Make the BOOTCAMP Partition writeable
 
do shell script "chmod 777 /dev/disk0s4" with administrator privileges
 
tell application "Finder"
 
	if exists "BOOTCAMP" then
 
		--Eject BOOTCAMP Volume if Mounted
 
		do shell script "umount -f /Volumes/Bootcamp" with administrator privileges
 
	end if
 
end tell
 
--Launch Virtual Machine
 
do shell script "vboxmanage startvm Win7"

Para fazer isso, vá no Spotlight e busque AppleScript Editor. Cole o texto acima no editor e clique em “Compilar”. Depois salve o arquivo no seu Desktop. Sempre que quiser usar, clique no ícone do script e mande executá-lo.

Fontes:

http://www.kevinrockwood.info/2010/04/windows7-in-osx-with-bootcamp-and-virtualbox/
https://www.virtualbox.org/manual/ch09.html#rawdisk
https://www.virtualbox.org/wiki/Migrate_Windows

Comments on this entry are closed.

  • Alex

    Opa tudo bem?
    Fiz passo a passo seu tutorial e não consegui iniciar meu windowns, ele esta dando uma tela azul, e pede para fazer um reparo de arquivos.
    e quando tento fazer o scrip aparece esse erro:
    VBoxManage: error: Could not find a registered machine named ‘Win7.vmdk’
    VBoxManage: error: Details: code VBOX_E_OBJECT_NOT_FOUND (0x80bb0001), component VirtualBox, interface IVirtualBox, callee nsISupports
    VBoxManage: error: Context: “FindMachine(Bstr(pszVM).raw(), machine.asOutParam())” at line 575 of file VBoxManageMisc.cpp

    pode me ajudar? Obrigado

  • Alex, você tem que renomear a máquina virtual para Win7 ou trocar no script o nome do arquivo vmdk para o nome da sua máquina virtual.

    Enquanto o script não consegue rodar, o resultado é esse mesmo, tela azul.

  • Alex

    José, o nome da minha maquina virtual ja esta como Win7.vmdk, será que él melhor excluir tudo e começar do 0? Estranho ele não estar achando o arquivo, tem que colocar algum diretório especifico?

  • José Antonio

    É estranho mesmo. Não sei o que pode ser.

    De qualquer forma, uma solução é ir no Finder, dar Eject no volume do Windows e depois iniciar o Virtualbox normalmente, sem esse script.

    Se não der eject no volume, ele dá tela azul mesmo.

  • Alex

    Olá José, fiz o que falou acima e mesmo assim da tela azul. Não tenho ideia do que pode ser, mas obrigado pela ajuda.