segunda-feira, 18 de janeiro de 2010

Instalando o Windows em um HD virtual

Como é bom saber que a cada pack de atualização do windows 7 traz uma surprezinha maravilhosa como esta, a possibilidade de criar um disco virtual. Aqui mostra passo-a-passo para criação desta manobra que pra quem tem a mente "fértil", despertar o que tem de mais criativo nos mais intimos pensamentos. Não vou falar o que penso a respeito, pois é projeto pessoal que poderá render-me Zilhões R$ blin, blin..., deixo com vocês a teoria e prática, virtualize-se...
___________________________________________________________________

Então, vamos analisar as possibilidades. Instalar em uma máquina virtual significa que o sistema não vai conseguir aproveitar bem o hardware da máquina “real”, mas ela é bem flexível: é possível fazer backups facilmente, e quando não precisar mais, basta apagar um arquivo (o HD virtual). Porém, em geral, máquinas virtuais são lentas. Particionar o HD já resolve esse problema que aparece nas máquinas virtuais, mas gera outro: partições no HD não são flexíveis. É muito mais fácil criar um arquivo e excluí-lo do que criar uma partição e excluí-la. E agora? Decisão difícil, não é?
O Windows 7 resolve esse problema de uma maneira muito bacana, na minha humilde opinião. É possível criar HDs virtuais (.vhd), instalar o Windows e dar boot a partir deles. Mas o que são HDs virtuais? Resumidamente, esses arquivos VHD são arquivos que simulam um disco rígido utilizando um arquivo. Então, resolvi experimentar esse novo recurso do Windows 7. :D
Citando o Scott Hanselman:
NOTA: Isto é um recurso avançado e você pode perder um dedo. Nenhuma garantia expressa ou implícita. Existem alguns workarounds nos *tubes mas esse recurso só funciona no Windows 7 e Windows Server 2008 R2. Tenha medo.
Então, vamos ao que interessa. Antes de tudo, certifique de ter todos os requisitos abaixo:
  • Uma instalação do Windows 7 ou do Windows Server 2008 R2 funcional.
  • DVD do Windows 7 (Enterprise ou Ultimate, somente) ou um DVD do Windows Server 2008 R2 (qualquer versão).
  • Script Install-WindowsImage, que pode ser baixado nessa página, no link “Install-WindowsImage.ps1”
E mais um aviso, você precisa de direitos de Administrador para realizar todos os passos. E todos os programas citados devem ser iniciados com direitos de administrador.
Precisamos antes qualquer coisa, criar o HD virtual, anexá-lo ao sistema e formatá-lo. Para isso, clique com o botão direito em Computador na área de trabalho ou no menu Iniciar e escolha “Gerenciar”.
Abrindo o Gerenciamento do computador
Na sidebar à esquerda, selecione “Gerenciamento de disco”, se ele não estiver selecionado, e na sidebar direita, clique em “Mais ações” e então em “Criar VHD” (a janela pode ser um pouco diferente no Windows 7, mas as opções são iguais).
Criar VHD no Gerenciador de disco
Na tela que é aberta, selecione o local do arquivo, o tamanho e o formato. Nesse exemplo, criei um VHD com 20GB, que é expandido automaticamente, ou seja, o tamanho do arquivo em disco vai aumentar conforme o conteúdo. É um pouco mais lento, porém economiza espaço em disco.
Definir local, tamanho e tipo do disco
Pressionando OK o VHD será criado e anexado ao gerenciador de discos. E não se assuste caso algum driver seja instalado. :) Isso é necessário para o Windows reconhecer o VHD. Agora vamos “inicializar” o disco. Para isso, clique com o botão inverso do mouse no disco adicionado (com um ícone cor ciano, ou água, como preferir), como na imagem abaixo, e selecione “Inicializar disco”.
Inicializar disco VHD
Na janela aberta, só pressione OK. Então, clique com o botão inverso do mouse no espaço marcado como “Não alocado” ao lado do disco e escolha “Novo Volume Simples…”.
Criar partição primária
Assim, o Assistente para Novas Partições Simples será iniciado. Não há segredo algum no assistente, basta clicar algumas vezes em “Avançar”, atribuir uma letra de unidade (aqui eu selecionei a unidade Z), informar um rótulo do volume (se desejar) e clicar em “Concluir”. Assim, você verá um novo disco no “Computador”.
VHD montado no Computador
Então, vamos instalar o Windows nesse HD. Só precisamos fazer uma coisa antes: ir nas propriedades daquele script que baixamos (no meu caso, coloquei em C:\Install-WindowsImage.ps1) e clicar no botão ”Desbloquear”. Por questões de segurança, o Windows “bloqueia” a execução do arquivo baixado da Internet.
Desbloqueando arquivo
Existem várias maneiras de realizar esse procedimento, mas serei mais prático, e vou usar o (bastante desprezado, diga-se) Windows PowerShell. O PowerShell é um aplicativo de scripting disponível para Windows XP, Server 2003, Vista, vem como componente opcional do Windows Server 2008 e já está pré-instalado no Windows 7 e Server 2008 R2. Basicamente, é um prompt de comando turbinado via .NET Framework.
Então inicie o PowerShell como Administrador. Para isso, abra o Menu Iniciar, digite powershell no campo de pesquisa e na lista de programas, clique em Windows PowerShell com o botão inverso do mouse e escolha “Executar como administrador”.
Abrir PowerShell como Administrador
Precisamos alterar a diretiva de execução de scripts temporariamente, pois o PowerShell por padrão bloqueia a execução de scripts (obrigado, Lucas, por ter me lembrado disso!). Para isso, execute o comando e confirme a operação:
Set-ExecutionPolicy RemoteSigned -scope Process
Pra instalar o Windows, vamos usar o script Install-WindowsImage. E ele precisa saber qual é a versão do Windows que queremos instalar. Então, com o DVD no drive (aqui é o drive D), é só executar o comando:
C:\Install-WindowsImage.ps1 -WIM D:\sources\install.wim
Ah, e lembre-se, altere se necessário o caminho do script e a unidade de DVD no comando acima. Aqui, com o DVD do Windows 7 RC, apareceu assim:
Detecção das versões do Windows no Install-WindowsImage
Certo, como eu quero instalar o Windows 7 Ultimate (só as versões Enterprise  e Ultimate suportam o boot em VHD), agora é só executar o comando abaixo:
C:\Install-WindowsImage.ps1 -WIM D:\sources\install.wim -Apply -Index 5 -Destination Z:
O comando é auto-explicativo, mas não custa nada explicar. Ele “aplica” a versão do indíce 5 (a coluna “Index” da imagem acima) à unidade Z, que é o VHD que criamos anteriormente. O processo demora um pouquinho
Instalação do Windows no VHD
Agora só nos resta configurar o boot. Considerando que o VHD esteja montado na unidade Z, é só executar:
Z:\Windows\System32\bcdboot Z:\Windows
Depois disso, temos o dual boot com a instalação real e a virtual configurado. E com o Windows 7 do VHD já instalado no gerenciador de boot, podemos mudar a descrição do Windows no boot e mudar o sistema selecionado por padrão. Para isso, chame o comando bcdedit no PowerShell. Você verá algo como:
Exemplo de saída do bcdedit
O conteúdo do retângulo amarelo da imagem vou chamar de {identificador}. Agora ele está como {default}, o que significa que esse é o item selecionado por padrão no gerenciador de boot. Quando adicionamos o Windows 7 do VHD ao boot, ele se torna o sistema padrão, ou seja, se não selecionarmos outro sistema no boot, essa nossa nova instalação será inicializada automaticamente.
Para mudar a descrição que aparece no gerenciador de boot (desnecessário, a menos que você goste de ver dois “Windows 7” na lista), basta fazer algo como:
bcdedit /set "{identificador}" description "Windows 7 - VHD"
Onde {identificador} é o código que identificamos anteriormente.
E se você quiser deixar a instalação “antiga” como padrão no boot (e considerando que estamos nela ainda), é só executar o comando:
bcdedit /default "{current}"
Feito isso, agora é só reiniciar o computador, no gerenciador de boot, escolher o recém instalado Windows 7 e realizar aquelas configurações básicas de pós-instalação do sistema, como a criação de contas de usuário, configuração de rede, drivers…
Windows Boot Manager mostrando o VHD

Desfazendo tudo

Se você já fez o que queria e quer limpar tudo isso que fizemos, é só fazer duas coisas:
  • Desanexar o VHD (se ele estiver anexado) no Gerenciador de discos.
desanexar-vhd
  • Deletar o arquivo VHD onde o Windows foi instalado.
  • Executar o comando bcdedit para descobrir o identificador do disco virtual.
  • Executar o comando bcdedit /delete "{identificador}" /cleanup, lembrando de substituir o {identificador} pelo identificador que encontramos antes.


Fonte:(http://www.winajuda.com/2010/01/04/instalando-o-windows-em-um-hd-virtual/)

Nenhum comentário:

Postar um comentário

Como mostrar a versão do Linux Debian

 Para mostrar a versão do Linux do Debian, rode o seguinte comando: $ cat /etc/*release* | grep CODENAME | cut -d "=" -f 2 Debian ...