Os arquivos da área de trabalhoRecuperação do PC com o Windows PE

Wes Miller

Já mencionei, em colunas anteriores, que a nossa visão inicial para o Windows PE consistia em fazer dele um ambiente de implantação. Mas, como todos os bons produtos, o Windows PE evoluiu para além disso. Os clientes (inicialmente, os OEMs) estavam ansiosos para criar uma só solução para produção e auto-recuperação dos usuários. Assim, várias empresas produziram

com o Windows® PE soluções para desempenhar as duas funções.

A maioria das ferramentas de recuperação existentes no momento se baseia na premissa de fazer com que o sistema retorne a um estado favorável conhecido, com o espelhamento do processo de implantação. O Windows Vista® torna a recuperação um pouco mais fácil do que no Windows XP e fornece suporte nativo à geração de imagens (consulte o artigo de Christine Fok sobre as tecnologias de backup do Windows Vista nesta edição da TechNet Magazine).

Na coluna deste mês, abordarei a criação da sua própria solução de recuperação com base no Windows PE. O Windows PE 2.0 está disponível gratuitamente para todos os licenciados do Windows, como componente do Windows AIK (Kit de Instalação Automatizada do Windows). Essa licença se aplica à implantação e também ao uso do Windows PE para fins de recuperação e solução de problemas.

Logicamente, será preciso levar em conta suas personalizações e ajustes, mas abordarei aqui os pontos gerais dos quais você terá de se lembrar, seja para implantar o Windows XP ou o Windows Vista. Se você está familiarizado com a geração de imagens, já sabe bastante sobre o assunto.

Os principais componentes de qualquer solução de recuperação do Windows PE são:

  • Windows PE
  • Um utilitário de geração de imagens
  • Elementos de script (ou um aplicativo formal) para unir todas as partes

Se desejar, você pode incluir suporte para SQL e ADSI (Active Directory® Service Interfaces). A conectividade com o SQL permite criar indiretamente uma solução que possibilite a seus sistemas gerar uma "lista de materiais", definindo o que é preciso para a instalação. Da mesma forma, a conexão com o Active Directory é conveniente para lidar com propriedades de MAO (objeto de conta por máquina).

Observe que a inclusão das ADSI no Windows PE não conta com suporte da Microsoft, mas há alguns artigos on-line explicando como fazer isso — e, se for feito corretamente, funcionará muito bem. Se não quiser tentar, você pode adicionar o suporte a SQL e compilar nele o fluxo de trabalho para a sua ferramenta de recuperação do Windows PE. Se precisar de alguma propriedade de ADSI, você poderá ter um sistema de servidor com uma tarefa agendada para consultar o mesmo SQL Server™ e, depois, consultar o Active Directory via ADSI — funcionando, essencialmente, como uma passagem.

Não é uma solução perfeita e precisará de algum uso de scripts ou de outra forma de automação, mas esse design permitirá a você interagir com o Active Directory a partir do Windows PE.

Também é possível usar o utilitário LDIFDE para ler informações no Active Directory a partir do Windows PE (consulte o artigo sobre esse assunto na Base de Dados de Conhecimento, em support.microsoft.com/kb/237677, para obter mais informações). Você pode, por exemplo, usar o seguinte comando:

ldifde -m -f x:\output.ldf -b <username> <domain netbiosname> <accountPassword> -s 
<DC or domain name> -d "DC=contoso,DC=com" -r "(&(objectclass=<computerclassname>)
(netbuisname=<mycomputername>))" - l "<attributename>"

Inserir esse comando fará com que seja recuperado um atributo do objeto de computador especificado para x:\output.ldf, onde a saída poderá ser analisada.

SKUs, bits e idiomas

Você precisa levar em conta as versões, as arquiteturas e os idiomas do Windows que precisará implantar. Em uma organização pequena, de atuação local, provavelmente você implantará apenas um sistema operacional — Windows XP ou Windows Vista — ou então utilizará o que já vier instalado nos novos PCs. É provável que você ainda não vá implantar muitos sistemas Windows x64, se implantar algum. E é quase certo que precise oferecer suporte a apenas um idioma. No entanto, quanto maior e mais global for a sua organização, com mais arquiteturas, versões e configurações você precisará lidar.

Mencionei, em uma coluna anterior, que é possível armazenar imagens de volumes x64 e x86 no mesmo arquivo WIM (Windows Imaging Format), embora isso não economize espaço. Se você estiver criando uma solução de recuperação e precisar dar conta das duas arquiteturas, deverá armazenar cada uma delas em um WIM separado. Da mesma forma, se for implantar e oferecer suporte ao Windows XP e ao Windows Vista, você não conseguirá economizar espaço armazenando os dois sistemas operacionais na mesma imagem. Isso só ocorrerá se você incluir várias instâncias dos mesmos aplicativos (por exemplo, o 2007 Microsoft® Office system) nas duas implantações. Assim, os arquivos dos aplicativos não precisarão ser armazenados várias vezes. Ainda assim, é improvável que isso gere uma economia de espaço significativa.

Métodos de inicialização do Windows PE

Windows PE 1.6

Inicialização PXE a partir da instalação remota

Serviço (RIS) (sem RAMDisk)

Unidade de disco rígido

Unidade flash USB

Inicialização de RAMDisk baseada em PXE

Inicialização de RAMDisk baseada em CD/DVD

Inicialização de RAMDisk baseada em unidade flash USB

Inicialização de RAMDisk baseada em unidade de disco rígido

Windows PE 2.0

Inicialização de RAMDisk baseada em PXE

Inicialização de RAMDisk baseada em CD/DVD

Inicialização de RAMDisk baseada em unidade flash USB

Inicialização de RAMDisk baseada em unidade de disco rígido

A inicialização PXE a partir do RIS é ideal se você precisa do PXE, mas convém observar que esse método leva mais tempo para inicializar e consome mais recursos de rede do que uma inicialização de RAMDisk baseada em PXE.

A unidade de disco rígido utiliza um mínimo de memória, mas bloqueia a unidade. Esse método é ideal se você utiliza um cenário de recuperação flip-flop com duas partições.

A unidade flash USB permite uma inicialização mais conveniente; no entanto, o uso de UFD (tanto em cenários RAMDisk quanto não-RAMDisk) é arriscado se os sistemas de inicialização não tiverem sido verificados pelo OEM como inicializáveis por UFD e não tiverem o logotipo Windows Vista Capable (que tem como um de seus requisitos a garantia de suporte à inicialização por UFD). A inicialização por UFD exige uma unidade flash de alto desempenho (para leitura e gravação), além do suporte a USB de alta velocidade por parte do controlador de USB e do BIOS.

A inicialização de RAMDisk (em suas diversas formas) exige mais memória, mas fornece desempenho ideal e retira do caminho o Windows PE, colocando-o em um RAMDisk na memória. A inicialização de RAMDisk do Windows PE 1.6, em geral, só deve ser usada em sistemas com pelo menos 256 MB de RAM. A inicialização do Windows PE 2.0 (que é sempre uma inicialização de RAMDisk baseada em WIM), em geral, só deve ser realizada em sistemas com pelo menos 384 MB de RAM.

Observe, no entanto, que ocorre uma economia de espaço significativa quando várias SKUs de uma versão específica do Windows são armazenadas no mesmo WIM. Suponhamos, por exemplo, que você combine o Windows XP Professional com o Windows XP Tablet PC Edition, ou então o Windows Vista Business Edition com o Windows Vista Ultimate Edition. Essas combinações utilizam o espaço com eficiência, uma vez que duas SKUs no mesmo nível de versão e service pack compartilham, em grande parte, o mesmo código e os mesmos arquivos.

Por fim, entra em jogo o idioma. Quanto maior a organização, mais idiomas será preciso levar em conta. Com o Windows XP, é possível escolher entre usar compilações localizadas ou a MUI (Multilingual User Interface). Nas compilações totalmente localizadas do Windows XP, quase todas as cadeias de caracteres são localizadas para os idiomas de destino. Por outro lado, com a MUI, o idioma base é o inglês e os pacotes de idioma da MUI (posteriormente, Pacotes de Interface de Idioma) alteram o máximo possível de cadeias de caracteres (a MUI apresentava resultados razoáveis no Windows 2000 e resultados muito melhores no Windows XP e no Windows Server 2003).

Se a sua organização utiliza a MUI, você pode obter um bom resultado combinando várias versões de idioma no mesmo WIM. Isso ocorre porque todas usam como base os binários do inglês. O mesmo não se aplica às versões localizadas anteriores ao Windows Vista. Como os próprios binários são localizados, o mesmo binário não terá correspondência entre idiomas. Ou seja, você precisará armazenar quase todo o sistema operacional (e os aplicativos localizados) de cada idioma.

Com o Windows Vista, pode-se considerar preteridas as versões localizadas (como parte de um único binário com recursos internos). O Windows Vista usa arquivos de recursos .mui para cada idioma — inclusive o inglês. Essencialmente, o Windows Vista é isento de idioma, pois quase todas as informações de idioma residem nos arquivos MUI. Por isso, armazenar mais de uma versão de idioma do Windows Vista no mesmo WIM resultará em uma economia de espaço significativa. Armazenar dois, quatro ou mais idiomas em um só WIM permitirá impedir um crescimento explosivo da imagem — e será possível alternar ou adicionar idiomas depois, de acordo com as mudanças nos requisitos.

Em suma, ao criar sua solução, você deve levar em conta as versões do Windows e de outros aplicativos que compartilham os mesmos binários, permitindo o armazenamento de uma só instância dos arquivos. Isso o ajudará a determinar quantos arquivos WIM serão necessários em toda a organização.

Cenários de usuário

Em geral, quanto maior se torna uma organização, mais aumenta sua complexidade. Isso não se deve apenas ao tamanho, mas também a todas as variáveis introduzidas — mais usuários e mais unidades de negócios, com mais necessidades específicas.

Lembro-me de uma determinada multinacional com dezenas de milhares de usuários e um processo de implantação totalmente gerenciado a partir de um só local, sob os aspectos geográfico e organizacional. O responsável por comandar essa organização sempre apresentava questões muito desafiadoras. Por exemplo, ele se preocupava com alguns usuários remotos em certas partes da África que não contavam com uma boa conexão de rede. Na verdade, muitos deles estavam a centenas de quilômetros de uma linha telefônica. Ele precisava saber como esses usuários poderiam recuperar os próprios sistemas sem passar por vários dias de inatividade ou viajar grandes distâncias.

Quando você desenvolve um produto — e, nesse sentido, você deve pensar na sua solução de recuperação como um produto — é preciso pensar nos usuários. Pense em necessidades de negócios específicas, mas também nas diversas complexidades associadas às diferentes categorias de usuários. Você deve incorporar casos de uso com descrições resumidas, representando cada tipo de usuário final ao qual precisa dar suporte. Isso pode ajudá-lo a reconhecer os usuários acidentalmente deixados de fora da sua solução de recuperação, garantindo que as necessidades de cada tipo de usuário sejam levadas em conta.

A versão certa do Windows PE

Outra decisão importante consiste em determinar qual a versão do Windows PE mais adequada às suas necessidades. As edições anteriores desta coluna podem ajudar, mas tentarei aqui tornar a decisão um pouco mais clara. Se uma das afirmações a seguir for verdadeira, você deverá usar o Windows PE 1.6:

  • Você está apenas recuperando o Windows XP (ou o Windows Server 2003)
  • Você está recuperando qualquer sistema não compatível com ACPI (Interface de Energia e Configuração Avançada)
  • Você está recuperando qualquer sistema que não tem um mínimo de 512 MB de RAM
  • Você está recuperando qualquer sistema que precisa de uma inicialização PXE (Pre-Boot eXecution) com menos de 256 MB de RAM

Se uma das afirmações a seguir for verdadeira, você deverá usar o Windows PE 2.0:

  • Você está apenas recuperando o Windows Vista (ou o Windows Server 2008)
  • Você está recuperando o Windows Vista e também o Windows XP
  • Você está utilizando o BitLocker™

Observe que o ImageX (consulte a seção "Criar, atualizar e armazenar"), assim como a maioria das soluções de geração de imagens de terceiros, funcionará bem com qualquer versão do Windows PE.

Inicializando o Windows PE

O próximo fator que você deve levar em conta é como o Windows PE será inicializado. Os cenários de usuário desempenham um papel fundamental nessa questão. É uma opção realista fazer com que os usuários dependam de CDs ou DVDs para a recuperação? Eles conseguirão utilizá-los com o laptop quando estiverem viajando? E como você fará para manter essa mídia de recuperação atualizada? As imagens de recuperação em mídia removível se tornam obsoletas com grande rapidez.

O cenário que tenho encontrado com mais freqüência é a partição secundária de disco rígido. Outra opção é a inicialização PXE. Também é possível avaliar a possibilidade de usar unidades USB externas, ou mesmo UFDs (unidades flash USB). Contudo, é necessário que o hardware em questão ofereça explicitamente suporte à inicialização a partir de um dispositivo UFD.

A barra lateral "Métodos de inicialização do Windows PE" descreve os métodos com suporte para inicializar cada versão do Windows PE e traz algumas considerações importantes sobre cada um deles.

Sua meta ao inicializar o Windows PE deve ser dar início ao processo de recuperação, atendendo, ao mesmo tempo, a determinados critérios:

  • Com o mínimo de interação do usuário
  • Com o mínimo de partes móveis (mídia removível ou dispositivos removíveis)
  • Mesmo que o PC não conte com conectividade de rede
  • Mesmo que o PC não possa ser inicializado localmente (falha na inicialização do Windows)

Em geral, os administradores não consideram uma opção viável colocar o Windows PE (simples ou em um RAMDisk) no disco rígido, devido à preocupação com falhas da unidade. Mas, na realidade, essa é uma opção viável, devido à confiabilidade dos discos na atualidade e ao fato de que, caso a unidade física venha a apresentar uma falha, o usuário não conseguirá mesmo recuperar o sistema sozinho.

Minha preferência consiste em criar uma partição secundária e armazenar nela a imagem de recuperação. Não sou favorável a tornar a partição oculta, o que apenas confunde os usuários. Usar uma ACL (lista de controle de acesso) também não é viável — a menos que os seus usuários não sejam administradores locais.

Reduzindo a partição usada pelo Windows (consulte a barra lateral "Criando uma partição de recuperação"), talvez você consiga liberar espaço suficiente para armazenar o Windows PE e a sua imagem de recuperação. Para colocar o Windows PE na partição secundária, basta criar o setor de inicialização apropriado na partição de recuperação e colocar o Windows PE nessa partição (os documentos incluídos no Windows AIK e nas versões anteriores do Windows PE explicam o processo, portanto não entrarei em detalhes aqui). O fator principal a ser lembrado é que a partição usada na inicialização é determinada pela partição marcada como ativa. O diskpart conta com um sinalizador ativo e com um inativo, igualmente importante. Para inicializar a partição de recuperação a partir do Windows (ou então de uma cópia do Windows PE), use o diskpart para alternar as partições ativas (veja a Figura 1). A seguir, há um exemplo de script de diskpart (use diskpart /s nome_do_script.txt) para fazer a alternância em um sistema de um só disco com duas partições:

SEL DIS 0 
SEL PAR 1 
INACTIVE
SEL PAR 2
ACTIVE
EXIT 

Figura 1 Diskpart alterando a partição ativa

Figura 1** Diskpart alterando a partição ativa **(Clique na imagem para aumentar a exibição)

Esse é o processo usado por várias ferramentas de recuperação para o consumidor para fazer o flip-flop entre partições — algo que só pode ser feito a partir do Windows PE em certos tipos de partições, como as ocultas do tipo OEM. Às vezes, essas ferramentas também reexibem uma partição oculta do tipo OEM.

Criar, atualizar e armazenar

Criando uma partição de recuperação

O processo para criar uma partição de recuperação deixando, ao mesmo tempo, o Windows intacto não é difícil, quando se conhece as etapas envolvidas. Eis aqui uma rápida orientação sobre o que é preciso fazer. Observe que esse processo exige o Windows PE 2.0. Mesmo que você não use o Windows PE 2.0 para implantação ou recuperação, precisará dele para essa tarefa. O processo também pode ser adotado ao implantar o Windows Vista e para criar uma partição de inicialização que será usada para os arquivos de inicialização do BitLocker, uma vez que o BitLocker requer pelo menos duas partições (uma para os arquivos de inicialização e outra para o restante do sistema Windows).

  1. Desfragmente seu disco (isso pode acelerar o processo de redução, que leva um tempo considerável)
  2. Inicialize o Windows PE 2.0
  3. Execute o diskpart (se quiser, você pode criar um script para as etapas de 4 a 9 e passar ao diskpart o seguinte argumento: /s nome_do_script)
  4. SEL VOL 1 (ou o volume que deseja reduzir)
  5. SHRINK DESIRED=N MIN=N (especificado em megabytes, DESIRED é a meta e MIN é o mínimo absolutamente necessário)
  6. Quando a redução for concluída, execute SEL DIS 0
  7. CRE PAR PRI (você pode especificar SIZE=N se quiser definir um tamanho diferente do restante do disco)
  8. ASSIGN LETTER=N: (essa letra é para uso somente no Windows PE)
  9. Saia do diskpart
  10. FORMAT N: /Q /Y /FS:NTFS (NTFS formata a nova partição)
  11. Execute bootsect N: /nt60 para 2.0 e /nt52 para 1.x)
  12. Copie os arquivos desejados do Windows PE para a partição de recuperação
  13. Desligue o sistema

Embora o ImageX seja uma solução gratuita, talvez você já utilize há algum tempo uma outra ferramenta de geração de imagens. Você pode usar a ferramenta com a qual se sentir mais à vontade. Se estiver avaliando a possibilidade de optar pelo ImageX, há alguns aspectos que aprecio nele e que vale a pena conhecer (além do fator econômico). O ImageX é especialmente agressivo no que se refere à compactação. Outro aspecto positivo é que uma imagem pode ser acrescentada e editada com relativa facilidade.

Também aprecio que o ImageX possibilite gerar, de forma não destrutiva, imagens de um ou mais volumes, permitindo preservar os dados do usuário simplesmente retirando-os do caminho. Em outras palavras, ao recuperar o Windows, não é preciso apagar o volume inteiro.

Então, logicamente, é preciso decidir onde armazenar a imagem. Supondo que a sua solução use uma partição de recuperação, você pode armazenar nela um WIM ou outro arquivo de imagem. Você pode até mesmo avaliar a possibilidade de usar WDS (Serviços de Implantação do Windows), criando uma imagem padrão do sistema operacional e armazenando-a na rede. Isso permite o uso de uma solução comum de recuperação, disponível em toda a infra-estrutura. Claro que, se houver usuários em campo (como os funcionários mencionados anteriormente, em partes remotas do mundo), será preciso garantir que eles tenham sua própria solução disponível quando não puderem estabelecer uma conexão com a rede.

Já mencionei a possibilidade de usar mídia, como DVDs, mas há uma série de motivos pelos quais não gosto dessa opção para uso geral. Por exemplo, o tamanho de uma imagem pode aumentar rapidamente, excedendo o tamanho de um DVD, e esse tipo de disco não pode ser facilmente atualizado. Isso não quer dizer que não haja espaço para a mídia óptica. É preciso apenas avaliar qual o melhor cenário para cada tipo de usuário. A minha preferência, se você ainda não descobriu, consiste em armazenar a imagem em uma partição de recuperação, em um disco rígido ou unidade flash USB ou então, quando for viável, na rede usando WDS.

Um aspecto que torna o WDS uma opção atraente é a facilidade de atualizar uma imagem centralizada. A esta altura, todos já devem saber que as atualizações do Windows são lançadas mensalmente e que, em geral, são críticas. Desenvolva sua solução de forma que a imagem de recuperação esteja sempre o mais atualizada possível. Com o WDS, você pode atualizar a imagem em cada servidor e ela ficará completa.

Preocupações com dados e configurações do usuário

Há alguns problemas que você deve ter em mente ao desenvolver uma solução de recuperação. Um aspecto essencial do planejamento de qualquer solução de recuperação consiste em garantir a segurança dos dados do usuário. Você certamente não deseja que um usuário em campo realize uma recuperação e, logo depois, descubra que todos os seus dados importantes foram perdidos no processo. O ideal é que os dados do usuário estejam armazenados em algum outro lugar que não a partição C:, a menos que você seja muito cuidadoso com a forma de tratar a recuperação do sistema.

Mencionei anteriormente que o ImageX permite restaurar um disco de forma não destrutiva. Ele moverá, por exemplo, a árvore de diretórios Documents and Settings (ou Users) existente para outro diretório, de forma que um usuário ou um script possa recuperar os arquivos manualmente quando a recuperação estiver concluída. Os usuários que armazenam todos os seus arquivos no perfil ou que usam perfis móveis, na maioria dos casos, conseguirão recuperar o sistema sem perder os dados. Contudo, é importante lembrar-se de que, a menos que você projete sua solução de recuperação com muito cuidado ou tenha uma solução perfeita de backup, alguns dados do usuário ainda podem ser perdidos.

Lembre-se de que, apesar de todo o seu planejamento, alguns usuários armazenam informações em outros locais, e não no perfil. Você deve garantir que a sua solução leve em conta a possibilidade de eliminar dados por acidente, alertando os usuários com antecedência.

Se você usa o EFS (sistema de arquivos com criptografia), certifique-se de executar seu plano de recuperação de chaves. Você não vai querer perder dados devido à criptografia irrecuperável. De forma semelhante ao BitLocker, verifique se está preparado para recuperar volumes criptografados com ele. Isso significa que será preciso usar o Windows PE 2.0 (o 1.x não é capaz de interagir com o BitLocker). Para obter mais informações sobre a recuperação do BitLocker, consulte blogs.msdn.com/si_team.

Por fim, esteja preparado para o fato de que alguns usuários se irritarão quando perceberem o desaparecimento de algumas personalizações ou aplicativos. As personalizações (de aplicativos e do próprio Windows) são armazenadas em alguns locais aleatórios, e não apenas no perfil do usuário. Quando restaurarem toda a partição do sistema operacional, alguns usuários ligarão para perguntar "Onde foi parar x?" ou "Por que o Word não mostra mais y?". Estabeleça expectativas entre os usuários, para que eles saibam que talvez o ambiente não volte a ser exatamente o mesmo do dia anterior.

Criar sua própria solução de recuperação com o Windows PE leva tempo e você precisa pensar nos usuários conforme realiza o planejamento e o desenvolvimento. Uma solução de recuperação não precisa ser excessivamente complexa; basta que consiga fazer com que o sistema do usuário volte a funcionar no menor tempo possível, com suporte técnico limitado.

Wes Miller é gerente de desenvolvimento da Pluck (www.pluck.com) em Austin, no Texas. Ele já trabalhou na Winternals Software, em Austin, e na Microsoft, como gerente de programas e gerente de produtos do Windows. Entre em contato com ele pelo email technet@getwired.com.

© 2008 Microsoft Corporation e CMP Media, LLC. Todos os direitos reservados. A reprodução parcial ou completa sem autorização é proibida..