Boot de VHD no Windows 7

Olá pessoal,

Estou preparando meu ambiente para as demos no TechEd Brasil 2009 e resolvi testar uma funcionalidade de conseguir dar boot de arquivos vhd do Windows 7. Abaixo você encontra algumas dicas e a maneira que utilizei para fazer a instalação, existem outras.

Dicas

  • A versão do Windows 7 que precisa ser instalada no arquivo vhd é a Ultimate ou Enterprise, outras versão não são suportadas;
  • O arquivo vhd precisa estar em um file system NTFS;
  • O arquivo vhd não pode estar compactado com NTFS;
  • O arquivo vhd precisa estar em um disco interno do computador, não é possível dar boot de vhd armazenado em disco USB;
  • O disco do computador precisa ter de espaço livre pelo menos o tamanho total do VHD, mesmo para um VHD dinâmico.

Como vocês devem imaginar, cometi todos os erros acima na minha instalação :)

Criação do arquivo VHD

O primeiro passo é criar um disco VHD, que pode ser realizado através da linha de comando DISKPART:

DISKPART
CREATE VDISK FILE=C:\VHD\<filename>.vhd MAXIMUM=20000 TYPE=EXPANDABLE
SELECT VDISK FILE=C:\VHD\<filename>.vhd
ATTACH VDISK
CREATE PARTITION PRIMARY
ASSIGN LETTER=V
FORMAT QUICK FS=NTFS LABEL=VHD
EXIT

Instalação

Depois do arquivo criado VHD, é necessário instalar o Windows 7. Existem algumas maneiras de realizar a instalação, eu preferi o script powershell Install-WindowsImagem, que pode ser utilizado para instalar um arquivo de imagem Windows (.wim), disponível no disco de instalação do Windows 7 em um arquivo VHD.

O arquivo wim está localizado no diretório \sources\install.wim da instalação do Windows 7.

Parar este script é necessário modificar a permissão de execução de scripts, conforme comando abaixo:

PS > set-ExecutionPolicy RemoteSigned

Em seguida devemos descobrir qual versão de Windows instalar, o comando abaixo lista as versões disponíveis:

PS> .\Install-WindowsImage.ps1 -WIM D:\sources\install.wim

Já a instalação leva em torno de 15 minutos e pode ser feita com o comando:

PS> .\Install-WindowsImage.ps1 -WIM D:\sources\install.wim -Apply -Index 5 -Destination V:

Configuração do boot

Após a instalação é necessário configurar o Windows 7 para o boot, imaginando que o disco que foi feita a instalação está montado no drive V, o processo seria feito com o comando:

V:\Windows\System32\bcdboot V:\Windows

Ao realizar um boot será exibido um menu para escolha de qual instalação subir, é só escolher a opção para o boot do VHD e terminar o processo de instalação.

Maiores detalhes podem ser encontrados no documento Using Install-WindowsImage to apply a Windows Image to a VHD.