Criando disco de Boot WinPE com PowerShell

Para criar um disco de Boot personalizado (por exemplo, contendo o PowerShell), entre outros recursos, podemos utilizar o ADK (Windows Assessment and Deployment Kit).

O Windows ADK possui as ferramentas necessárias para personalizar imagens do Windows para implantação em grande escala e para testar a qualidade e o desempenho do sistema, dos componentes adicionados e dos aplicativos em execução.

A versão mais recente do Windows ADK inclui:

  • O Windows Assessment Toolkit e o Windows Performance Toolkit para avaliar a qualidade e o desempenho de sistemas ou componentes.
  • Ferramentas de implantação, como o WinPE, o Sysprep, o DISM e outras ferramentas que você pode usar para personalizar e implantar imagens do Windows 10.

Para baixar o Windows ADK (Para Windows 10, versão 1803):
https://go.microsoft.com/fwlink/?linkid=873065

Obs.: Para cada versão do Windows existe uma distribuição especifica do Windows ADK.

O Windows ADK contém também ferramentas que os profissionais de TI podem usar para implantar o Windows 10 em toda a empresa, incluindo a Ferramenta de Migração de Perfil do Usuário (USMT) e a Ferramenta de Gerenciamento de Ativação de Volume (VAMT).

Após baixar o Windows ADK, inicie a instalação do mesmo:

Especifique o caminho onde será instalado o Windows Kits:

Aceitação dos termos de licenças:

Selecione os componentes que serão instalados. Para criar uma imagem WindowsPE (Windows PreInstallation Environment), é necessario neste momento apenas os componentes “Deployment Tools” e “Windows Preinstallation Environment”, contudo nada lhe impede de instalar os demais recursos, que podem ser utilizados posteriormente:

Clique em “Install” para dar inicio à instalação dos componentes:

Feita a instalação, vamos executar o componente chamado “Deployment and Imaging Tools Environment”. Faça isto preferencialmente como Administrador:

Este componente possui o utilitario chamado CopyPE, responsável por criar um diretório onde serão criados arquivos necessários para a imagem do Windows PE.

Primeiramente, crie um diretório onde será gerada a pasta dos arquivos do WinPE. Neste exemplo criei o diretório “WinPE” na minha área de Trabalho. Dentro dela, sera criada uma nova pasta contendo a estrutura do Windows. Em seguida, execute a linha de comando:

copype <versão 32 ou 64 ou arm> <caminho da pasta>

Ex.: Copype amd64 C:\Users\wannacry\Desktop\WinPE\Winpe64

Dentro do diretório “WinPE” será gerado um novo diretório chamado “Winpe64”, e serão copiados todos os arquivos necessários para criação da imagem.

Ao finalizar a cópia, verifique os arquivos criados no diretório:

Verifique no caminho: \media\sources

Lá deve conter  arquivo de imagem do Windows (boot.wim).

O Arquivo de inicialização de Imagem do Windows (WIMBoot) permite configurar um PC para que ele seja executado diretamente de um arquivo de imagem do Windows compactado (arquivo .WIM). Este será o arquivo utilizado para montar a imagem “pronta” do Windows.

Com o arquivo de imagem criado (boot.wim), agora vamos “montar” a imagem em um diretório, preferencialmente no diretório pré-definido “\mount”. Ao “montar” a imagem, você terá uma imagem “básica” do sistema operacional (diretórios Windows, Users, Program Files).

Para isto execute a seguinte linha de comando:

DISM /Mount-Image /ImageFile:<local do arquivo boot.wim> /index:1 /MountDir:<local onde será montado>

Ex.: DISM /Mount-Image /ImageFile:C:\Users\wannacry\Desktop\WinPE\Winpe64\media\sources\boot.wim /index:1 /MountDir:C:\Users\wannacry\Desktop\WinPE\Winpe64\mount

Com a imagem “montada”, vamos adicionar os pacotes do powerShell à nossa imagem do WindowsPE. Para isto, usaremos o próprio PowerShell para adicionar os pacotes.

Isto poderia ser feito ainda pelo CMD, porém acredito que seja mais simples pelos cmdlets do PowerShell. Pode-se utilizar o PowerShell ou PowerShell ISE:

Com o PowerShell aberto, acesse o diretório onde contém os pacotes que serão adicionados. Estes ficam em:

C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs

Aqui utilizei o PowerShell ISE para facilitar a execução dos comandos:

Para adicionar o PowerShell à nossa imagem do WindowsPE, será necessário baixar os seguintes pacotes:

Add-WindowsPackage -Path C:\<caminho da pasta>\mount -PackagePath .\WinPE-NetFx.cab
Add-WindowsPackage -Path C:\<caminho da pasta>\mount -PackagePath .\WinPE-Scripting.cab
Add-WindowsPackage -Path C:\<caminho da pasta>\mount -PackagePath .\WinPE-WMI.cab
Add-WindowsPackage -Path C:\<caminho da pasta>\mount -PackagePath .\WinPE-PowerShell.cab

Adicionados todos os pacotes necessários para a execução do PowerShell em nossa imagem, voltamos ao “Deployment and Imaging Tools Environment”.

Agora precisamos “desmontar” a imagem gravando todas as alterações com o parâmetro “/commit”:

DISM /Unmount-Image /MountDir:C:\Users\wannacry\Desktop\WinPE\Winpe64\mount /commit

Com a imagem pronta, vamos criar o disco de boot (.ISO) executando o utilitario “MakeWinpeMedia”:

MakeWinpeMedia /iso <caminho dos arquivos de imagem> <caminho onde será salvo o iso>

Ex.: MakeWinpeMedia /iso C:\Users\wannacry\Desktop\WinPE\Winpe64 C:\Users\wannacry\Desktop\WinPE\BootISO\WinPEx64.iso

Grave a imagem ISO em algum dispositivo (USB ou CD/DVD) e realize um boot a partir dele.

Ao iniciar, será aberto um prompt de comando, e a partir dele você poderá executar o Powershell, conforme o exemplo:

 

Leave a Reply

O seu endereço de email não será publicado. Campos obrigatórios marcados com *