Páginas

quarta-feira, 22 de junho de 2011

Como integrar updates a uma imagem do Windows 7

Para IT Pro’s e end-users que acompanharam o Windows Vista e o Windows AIK 1.1, as ferramentas Pkgmgr, IntlCfg e PEImg provavelmente são familiares.
O que estas ferramentas executavam? A seguir irei falar um pouco das funcionalidade de cada uma destas ferramentas.
  1. PkgMgr: Package Manager ou PkgMgr é uma ferramenta de linha de comando que permite executar a instalação/remoção/configuração de pacotes (Updates) no Windows Vista tal como habilitar ou desabilitar características (Features) do mesmo na ima WIM.
  2. IntlCfg: International Settings and Configuration Tool ou IntlCfg é uma ferramenta de linha de comando que permite executar instalação/remoção/configuração de pacotes de idiomas tal como as opções regionais do sistema na imagem WIM.
  3. PEImg: Preinstallation Environment Configuration Tool ou PEImg é uma ferramente de linha de comando que permite executar alterações/configurações no Windows PE usado, por exemplo, para capturar a imagem de um equipamento que esteja executando o Windows Vista.
O que o DISM faz?  O DISM concentra todas as funcionalidades mencionadas anteriormente das ferramentas PkgMgr, IntlCfg e PEImg em apenas um utilitário de linha de comando.
Com o uso do DISM você pode:
  1. Montar/desmontar imagens do tipo WIM facilmente.
  2. Instalar/remover updates em uma imagem do Windows 7.
  3. Instalar/remover drivers em uma imagem do Windows 7.
  4. Instalar/remover pacotes de idiomas em uma imagem do Windows 7.
  5. Alterar configurações regionais (idioma de entrada, layout do teclado, etc.) em uma imagem do Windows 7.
  6. Obter informações de uma imagem – index, names, updates, drivers, etc.
  7. Aplicar um arquivo de resposta (Unattended ou AutoUnattended) a uma imagem.
  8. Verificar quais aplicações estão instaladas em uma imagem do Windows 7.
  9. Permite manipular arquivo de disco virtual (VHD).
Como podemos ver, temos uma grande variedades de possibilidades para executarmos quando estamos trabalhando com o DISM.
Onde eu posso obter o DISM? Não há porque baixar ou instalar algum pacote no Windows 7 meu caro leitor. Apenas no Windows Vista era necessário a instalação do conjunto de ferramentas do Windows AIK para se ter disponível o PkgMgr, IntlCfg e o PEImg.
Com o Windows 7, nativamente o DISM está presente no sistema operacional e pode ser utilizado a qualquer momento.
Como eu posso utilizar o DISM? Clique em Iniciar e na caixa Pesquisar um arquivo ou diretório digite o comando CMD.
No topo do menu Iniciar ao encontrar o atalho para Prompt de Comando clique com o botão direito do mouse e escolha Executar como administrador.
Na janela do Prompt de Comando digite o comando dism /? e pressione ENTER para visualizar os parametros disponíveis na ferramenta. Se você desejar saber sobre um determinado parametro, digite dism /parametro /?, por exemplo, dism /Online /? para exibir as opções deste parametro.
Agora que já conhecemos sobre a ferramenta e sabemos como iniciá-la, vamos ver o que é necessário para integrar um ou mais updates a uma imagem do Windows 7.
O que você precisa é:
  1. Ter uma media ou ISO contendo os bits de instalação do Windows 7.
  2. Ter efetuado o download dos updates (.MSU) que você deseja integrar a sua imagem em sua estação ou em uma media (CD/DVD/USB).
  3. Criar o diretório C:\Image para armazenar os bits de instalação do Windows 7.
  4. Criar o diretório C:\Servicing para montar a imagem do Windows 7 e integrarmos os updates.
  5. Criar o diretório C:\Updates para disponibilizar os pacotes a serem instalados.
Pronto! Agora você pode começar o processo.
A principio estou supondo que você já tenha os pacotes que deseja instalar na imagem do Windows 7. Caso não os tenha, você pode utilizar de três meios para obtê-los.
  1. Utilizar o Microsoft Download Center para localizar os updates e efetuar o download pacote por pacote.
  2. Utilizar a ferramenta AutoPatcher para efetuar o download automatizado dos pacotes.
  3. Utilizar a ferramenta WSUS Offline Update para efetuar o download automatizado dos pacotes.
Escolha a melhor forma que você julgar e baixe os pacotes caso não os tenha. Se ja possuir os pacotes que deseja instalar em sua imagem, recomendo que os copie para o diretório C:\Updates para que os comandos informados aqui sejam coerentes com os que irá executar também.
Após ter finalizado a cópia dos updates para o diretório correto, o próximo passo é copiar o conteúdo do DVD de instalação do Windows 7 ou extrair o conteúdo do arquivo ISO para o diretório C:\Image. Aguarde pois a cópia/extração do conteúdo pode levar algum tempo dependendo do hardware que possui.
Concluída a movimentação dos bits do Windows 7 para o diretorio C:\Image, vamos começar a manipular a imagem do sistema operacional com o DISM.
Se não estiver com o Prompt de Comando aberto e com privilégios elevados, repita o processo informado no inicio para que você possa executar o DISM corretamente.
É importante dizer que o processo de instalação/remoção/configuração realizado aqui é feito por versão do sistema operacional disponível na imagem. Neste exemplo irei utilizar a versão do Windows 7 Ultimate Edition x86 como piloto mas você pode escolher outra edição caso possua a licença de instalação para outra edição.
Caso for necessário aplicar qualquer tipo de alteração em outra versão do Windows 7, será necessario repetir todos os passos.
Sabemos que este How Do I contempla alterar a edição do Windows 7 Ultimate x86, entao, o primeiro passo que precisamos realizar é identificar o número da edição no INDEX da imagem ou seu NAME. Aqui irei utilizar o número do index para selecionar a versão Windows 7 Ultimate.
Como eu posso identificar esse número? No Prompt de Comando execute o comando abaixo para podermos identificar os números no index referentes as versões:
dism /Get-WimInfo /WimFile:C:\Image\sources\install.wim
O resultado deste comando será o mostrado abaixo:
Ferramenta de Gerenciamento e Manutenção de Imagens de Implantação
Versão: 6.1.7600.16385
Detalhes de imagem : c:\image\sources\install.wim
Índice: 1
Nome : Windows 7 STARTER
Descrição : Windows 7 STARTER
Tamanho : 7.936.340.784 bytes
Índice: 2
Nome : Windows 7 HOMEBASIC
Descrição : Windows 7 HOMEBASIC
Tamanho : 7.992.394.907 bytes
Índice: 3
Nome : Windows 7 HOMEPREMIUM
Descrição : Windows 7 HOMEPREMIUM
Tamanho : 8.432.859.356 bytes
Índice: 4
Nome : Windows 7 PROFESSIONAL
Descrição : Windows 7 PROFESSIONAL
Tamanho : 8.313.318.889 bytes
Índice: 5
Nome : Windows 7 ULTIMATE
Descrição : Windows 7 ULTIMATE
Tamanho : 8.471.060.645 bytes
A operação foi concluída com êxito.
Neste resultado a informação importante é o número do tributo Index : X (Indice:X). Este número irá identificar qual é versão que estamos manipulando com o DISM. Com o resultado acima identificamos que o número do index referente a versão Windows 7 Ultimate é CINCO (5).
Agora que temos a informação do index, vamos monstar a imagem para podermos instalar os updates. No Prompt de Comando digite o comando abaixo para montarmos o arquivo install.wim:
dism /Mount-Wim /WimFile:C:\Image\sources\install.wim /Index:5 /MountDir:C:\Servicing
Nesta etapa é preciso aguardar por alguns momentos pois o processo de montagem leverá alguns minutos. A conclusão do processo pode ser visualizada quando a barra de progresso atingir 100% e a mensagem The operation completeded sucessfully for exibida após o comando.
Ferramenta de Gerenciamento e Manutenção de Imagens de Implantação
Versão: 6.1.7600.16385
Montando a imagem
[==========================100.0%==========================]
A operação foi concluída com êxito.
Se receber a mensagem de sucesso, podemos prosseguir com o processo. Podemos nesta etapa iniciar a instalação de um ou mais updates e caso você queira ter certeza de qual versão estamos manipulando com o DISM você pode executar o seguinte comando:
dism /Get-MountedWimInfo
O resutado deste comando é este:
Ferramenta de Gerenciamento e Manutenção de Imagens de Implantação
Versão: 6.1.7600.16385
Imagens montadas:
Dir. de montagem : c:\Servicing
Arquivo de Imagem : c:\image\sources\install.wim
Índice de Imagem : 5
Leitura/Gravação Montada: Sim
Status : Ok
A operação foi concluída com êxito.
Perceba no resultado que o número 5 aparece no atributo Image Index indicando que estamos trabalhando com o edição Windows 7 Ultimate.
Antes de aplicar um ou mais updates no Windows 7 é interessante você verificar quais updates já estão disponíveis na imagem no momento de uma instalação limpa. Para verificar quais são os updates inclusos em uma imagem padrão digite o seguinte comando no Prompt de Comando:
dism /Image:C:\Servicing /Get-Packages
O resultado que você terá após executar o comando será este:
Ferramenta de Gerenciamento e Manutenção de Imagens de Implantação
Versão: 6.1.7600.16385
Versão da Imagem: 6.1.7600.16385
Packages listing:
Package Identity : Microsoft-Windows-Client-LanguagePack-Package~31bf3856ad364e3
5~x86~en-US~6.1.7600.16385
State : Installed
Release Type : Language Pack
Install Time : 14/07/2009 04:46
Package Identity : Microsoft-Windows-Foundation-Package~31bf3856ad364e35~x86~~6.
1.7600.16385
State : Installed
Release Type : Foundation
Install Time : 14/07/2009 04:46
Package Identity : Microsoft-Windows-LocalPack-AU-Package~31bf3856ad364e35~x86~~
6.1.7600.16385
State : Install Pending
Release Type : Local Pack
Install Time : 14/07/2009 07:54
Package Identity : Microsoft-Windows-LocalPack-CA-Package~31bf3856ad364e35~x86~~
6.1.7600.16385
State : Install Pending
Release Type : Local Pack
Install Time : 14/07/2009 07:54
Package Identity : Microsoft-Windows-LocalPack-GB-Package~31bf3856ad364e35~x86~~
6.1.7600.16385
State : Install Pending
Release Type : Local Pack
Install Time : 14/07/2009 07:55
Package Identity : Microsoft-Windows-LocalPack-US-Package~31bf3856ad364e35~x86~~
6.1.7600.16385
State : Install Pending
Release Type : Local Pack
Install Time : 14/07/2009 07:55
Package Identity : Microsoft-Windows-LocalPack-ZA-Package~31bf3856ad364e35~x86~~
6.1.7600.16385
State : Install Pending
Release Type : Local Pack
Install Time : 14/07/2009 07:55
A operação foi concluída com êxito.
É possível melhorar a visualização do resultado utilizando o parametro /format:type no comando. Um exemplo seria colocar o resultado como uma lista e exportar para um arquivo TXT. Para isto seria necessário executar o seguinda comando:
dism /Image:C:\Servicing /Get-Packages /Format:List > C:\Add-Packages.txt
Com este comando a saída no Prompt de Comando será omitida e você poderá visualizar no arquivo Add-Packages.txt os updates de forma mais amigável. É possível utilizar também o tipo tabela – /format:table.
Vamos agora instalar um determinado pacote ou vários pacotes no Windows 7. Baixe o pacote KB2028551 deste link para nosso teste. No Prompt de Comando digite o seguinte comando para instalarmos o KB2028551:
dism /Image:C:\Servicing /Add-Package /PackagePath:C:\Updates\Windows6.1-KB2160329-x86.msu
Aguarde até que todo o processo de instalação seja feito na imagem e receberá a mensagem abaixo ao final.
Ferramenta de Gerenciamento e Manutenção de Imagens de Implantação
Versão: 6.1.7600.16385
Versão da Imagem: 6.1.7600.16385
Processing 1 of 1 – Adding package g:\windows7\updates\windows6.1-KB2160329-x86.
msu
[==========================100.0%==========================]
A operação foi concluída com êxito.
No comando anterior, fizemos a instalação de um update apenas. Entretanto, há outras possibilidades mais práticas. A seguir estão as possibilidades:
  • é possível instalar vários pacotes .MSU.
  • é possível instalar um ou mais pacotes do tipo .CAB.
  • é possível instalar um ou mais pacotes indicando apenas um diretório onde os mesmo estão.
Abaixo estão alguns exemplos de como seria usado o comando anterior para as três opções mencionadas anteriormente:
  • dism /Image:C:\Servicing /Add-Package /PackagePath:C:\Updates\NomedoKB1.msu /PackagePath:C:\Updates\NomedoKB2.msu
  • dism /Image:C:\Servicing /Add-Package /PackagePath:C:\Updates\NomedoCAB1.cab /PackagePath:C:\Update\NomedoCAB2.cab
  • dism /Image:C:\Servicing /Add-Package /PackagePath:C:\Updates
Após inserir o novo update que escolhemos como piloto, vamos confirmar que o mesmo agora está integrado ao processo de instalação do Windows 7. Execute novamente o comando abaixo:
dism /Image:C:\Servicing /Get-Packages
A saída do comando será a seguinte:
Ferramenta de Gerenciamento e Manutenção de Imagens de Implantação
Versão: 6.1.7600.16385
Versão da Imagem: 6.1.7600.16385
Packages listing:
Package Identity : Microsoft-Windows-Client-LanguagePack-Package~31bf3856ad364e3
5~x86~en-US~6.1.7600.16385
State : Installed
Release Type : Language Pack
Install Time : 14/07/2009 04:46
Package Identity : Microsoft-Windows-Foundation-Package~31bf3856ad364e35~x86~~6.
1.7600.16385
State : Installed
Release Type : Foundation
Install Time : 14/07/2009 04:46
Package Identity : Microsoft-Windows-LocalPack-AU-Package~31bf3856ad364e35~x86~~
6.1.7600.16385
State : Install Pending
Release Type : Local Pack
Install Time : 14/07/2009 07:54
Package Identity : Microsoft-Windows-LocalPack-CA-Package~31bf3856ad364e35~x86~~
6.1.7600.16385
State : Install Pending
Release Type : Local Pack
Install Time : 14/07/2009 07:54
Package Identity : Microsoft-Windows-LocalPack-GB-Package~31bf3856ad364e35~x86~~
6.1.7600.16385
State : Install Pending
Release Type : Local Pack
Install Time : 14/07/2009 07:55
Package Identity : Microsoft-Windows-LocalPack-US-Package~31bf3856ad364e35~x86~~
6.1.7600.16385
State : Install Pending
Release Type : Local Pack
Install Time : 14/07/2009 07:55
Package Identity : Microsoft-Windows-LocalPack-ZA-Package~31bf3856ad364e35~x86~~
6.1.7600.16385
State : Install Pending
Release Type : Local Pack
Install Time : 14/07/2009 07:55
Package Identity : Package_for_KB2160329~31bf3856ad364e35~x86~~6.1.1.0
State : Install Pending
Release Type : Security Update
Install Time : 01/11/2010 01:20
A operação foi concluída com êxito.
Como podemos ver, ao final do resultado está o pacote que acabamos de integrar a imagem. Este pacote será instalado no Windows 7 quando o Windows Setup, no processo de instalação, estiver na etapa de Instalação de atualizações.
Perfeito caro leitor. Já integramos um pacote e agora, caso tenha baixado vários pacotes, recomando que utilize o comando para integrar os pacotes e informe em /PackagePath apenas o caminho do diretório C:\Updates. Desta forma, todos os pacotes .MSU e/ou .CAB que estiverem dentro do diretório serão instalados.
Agora que já realizamos a integração dos pacotes é hora de desmontar a imagem install.wim para concluir o processo. Utilize o comando abaixo para fazer este processo.
dism /UnMount-WIM /MountDir:C:\Servicing /Commit
Aguarde o processo ser finalizado – isto pode levar um tempo bem maior se comparado com o processo de montagem da imagem.
Ao final do processo você receberá a mensagem abaixo:
Ferramenta de Gerenciamento e Manutenção de Imagens de Implantação
Versão: 6.1.7600.16385
Arquivo de Imagem : g:\windows7\windows7files\sources\install.wim
Índice de Imagem : 5
Salvando a imagem
[==========================100.0%==========================]
Desmontando a imagem
[==========================100.0%==========================]
A operação foi concluída com êxito.
Pronto! Agora o que você precisa fazer é criar uma nova imagem ISO com o conteúdo do diretório C:\Image para ter um DVD e/ou USB Stick de instalação do Windows 7 contendo as correções que integrou.
Se possuir o Windows AIK for Windows 7 instalado, utilize o comando abaixo para gerar uma imagem bootável do diretório C:\Image:
oscdimg -bC:\Image\boot\etfsboot.com -u2 -h -lWindows7PT-BR C:\Image C:\Windows7Updated.iso
Perfeito meu caro leitor! Agora você já sabe como integrar pacotes de atualizações do Windows 7 em uma imagem para evitar que este processo seja feito todas as vezes que se fizer necessária uma instalação limpa.
Mantenha um processo de manutenção da imagem sempre integrando os updates que são lançados mensalmente.

0 comentários: