Share via


Manter configurações de driver ao capturar uma imagem do Windows

Um cenário de implantação comum é capturar uma única imagem do Windows de um computador de referência e, em seguida, aplicar a imagem a um grupo de computadores de destino que tenham configurações de hardware idênticas.

Para economizar tempo durante a instalação e acelerar a OOBE (experiência inicial) para usuários finais, você pode instruir a Instalação do Windows a manter as configurações de driver do computador de referência como parte da imagem do Windows. Você deve fazer isso somente quando o hardware no computador de referência e o hardware nos computadores de destino forem idênticos. Quando você faz isso, a Instalação do Windows mantém as configurações de driver durante a captura e a implantação de imagens.

Instruindo a instalação do Windows a manter configurações de driver

Antes de capturar uma imagem, generalize o computador usando um arquivo de resposta que instrua a Instalação do Windows a manter as configurações do driver.

Para manter as configurações de driver usando um arquivo de resposta

  1. No computador técnico, abra o Windows SIM (Gerenciador de Imagens do Sistema do Windows). Clique em Iniciar, digite Gerenciador de Imagens do Sistema do Windows e selecione Gerenciador de Imagens do Sistema do Windows.

  2. Crie um novo arquivo de resposta ou atualize um arquivo de resposta existente. Para obter mais informações, consulte Criar ou abrir um arquivo de resposta e Práticas recomendadas para criar arquivos de resposta.

  3. Adicione a configuração Microsoft-Windows-PnpSysprep/PersistAllDeviceInstalls . Para obter mais informações, consulte a seção Visão geral neste tópico.

  4. Se o computador tiver hardware indetectável, inclua a configuração Microsoft-Windows-PnpSysprep/DoNotCleanUpNonPresentDevices . Para obter mais informações, consulte a seção Hardware não detectável neste tópico.

  5. Generalize o computador usando o arquivo de resposta. Por exemplo:

    Sysprep /generalize /unattend:C:\unattend.xml
    

Visão geral

Os pacotes de driver in-box do Windows incluem drivers de dispositivo que dão suporte a uma ampla variedade de hardware popular. Se o hardware específico exigir drivers de dispositivo adicionais para inicialização, você poderá pré-instalar drivers de dispositivo adicionais em sua imagem do Windows. Os IHVs (fornecedores independentes de hardware) geralmente fornecem esses drivers de dispositivo adicionais junto com o hardware do dispositivo. Para obter mais informações sobre como adicionar drivers de dispositivo, consulte Adicionar um driver online no modo de auditoria.

Para preparar uma imagem do Windows para implantação em vários computadores, você deve usar a ferramenta de Preparação do Sistema (Sysprep) para generalizar a imagem do Windows. A generalização de uma imagem do Windows remove as informações específicas do computador e prepara os drivers de dispositivo para a primeira inicialização. Essa preparação inclui estas etapas:

  • O estado do dispositivo para hardware é removido.

  • As configurações de driver crítico de inicialização são redefinidas para seus valores padrão.

  • Os arquivos de log do dispositivo são excluídos.

Ao generalizar o computador, use um arquivo de resposta que tenha a configuração Microsoft-Windows-PnpSysPrep\PersistAllDeviceInstalls para economizar tempo. Essa configuração impede que a Instalação do Windows remova e reconfigure o estado do dispositivo para hardware idêntico. Na primeira inicialização, os drivers de dispositivo detectados já estão pré-configurados, potencialmente habilitando uma experiência de primeira inicialização mais rápida.

Importante Evite usar a configuração PersistAllDeviceInstalls quando o hardware e a configuração de hardware no computador de referência não forem idênticos aos dos computadores de destino. Mesmo diferenças aparentemente pequenas na configuração de hardware ou hardware podem causar problemas graves ou facilmente negligenciados. Para obter mais informações, consulte a seção Solução de problemas de diferenças de configuração de hardware deste tópico.

É uma boa prática não usar a configuração PersistAllDeviceInstalls em sua imagem de referência primária. Em vez disso, para cada grupo de computadores que têm uma configuração de hardware diferente, primeiro carregue sua imagem de referência primária em um novo computador de referência que tenha a configuração de hardware planejada. Em seguida, capture uma nova imagem dessa configuração e use a configuração PersistAllDeviceInstalls .

Para obter mais informações sobre como generalizar a imagem do Windows, consulte Sysprep (Generalizar) uma instalação do Windows.

Práticas recomendadas para revisões de driver e classificação de driver

Não mantenha várias versões ou revisões do mesmo pacote de driver na mesma imagem. Use ferramentas de manutenção offline ou online para atualizar drivers.

Normalmente, quando a Instalação do Windows inicializa um computador e existem várias versões de um pacote de driver nesse computador, a Instalação determina qual driver instalar usando a classificação de driver. Mas quando você usa a configuração PersistAllDeviceInstalls , os processos normais de classificação de driver não ocorrem. Portanto, os dispositivos que usam drivers desatualizados podem permanecer instalados. Para obter mais informações sobre a classificação de driver, consulte Como o Windows classifica os drivers no MSDN.

Se você precisar adicionar um driver de dispositivo a uma imagem que usa a configuração PersistAllDeviceInstalls , poderá atualizar os drivers de dispositivo usando um dos seguintes métodos:

Solução de problemas de diferenças de configuração de hardware

Para que a configuração PersistAllDeviceInstalls funcione corretamente, a configuração de hardware deve ser idêntica no computador de referência e nos computadores de destino. A configuração de hardware inclui os seguintes componentes:

  • Criação e modelo de hardware.

  • Firmware. Atualizações, revisões e diferenças de configuração podem fazer com que alguns dispositivos relatem critérios diferentes para drivers de dispositivo correspondentes ou usem recursos diferentes. Por exemplo:

    • Os dispositivos baseados em PCI (Interconexão de Componentes Periféricos) podem inserir diferentes números de revisão de subsistema em suas IDs de hardware relatadas.

    • As revisões do BIOS podem alterar o namespace ACPI (Advanced Configuration and Power Interface). Isso faz com que a Instalação do Windows relate dispositivos existentes de maneira diferente ou introduza dispositivos existentes como novos dispositivos.

    • As diferenças de configuração do sistema BIOS podem fazer com que os dispositivos do sistema solicitem diferentes recursos de memória, E/S, DMA (acesso direto à memória) ou IRQ (solicitação de interrupção).

  • Local físico. As configurações de hardware devem usar o mesmo slot, porta ou números de soquete para se conectar a dispositivos externos. Por exemplo:

    • Os cartões de expansão PCI devem ser inseridos nos mesmos números de slot.

    • Os dispositivos USB devem ser conectados ou conectados aos mesmos números de porta nos mesmos controladores de host USB e hubs integrados.

    • Os dispositivos de armazenamento devem estar conectados aos mesmos controladores e canais de armazenamento.

Diferenças de baixo risco, de risco médio e de alto risco na configuração de hardware

Quando você usa a configuração PersistAllDeviceInstalls , qualquer diferença de hardware pode causar problemas. Mas algumas diferenças são mais propensas a causar problemas do que outras.

Diferenças de baixo risco

Para os seguintes tipos de diferenças de hardware, você pode ser capaz de contornar possíveis conflitos de driver e ainda usar a configuração PersistAllDeviceInstalls :

  • Velocidade de clock da CPU

  • Quantidade de memória

  • Capacidade do disco rígido

  • Dispositivos de entrada externos, como teclados e dispositivos de mouse

  • Monitores

Diferenças de risco médio

Para os seguintes tipos de diferenças de hardware, recomendamos que você não use a configuração PersistAllDeviceInstalls :

  • Placas de vídeo

  • Unidades de armazenamento e leitores de mídia, como unidades ópticas e leitores de cartão

  • Dispositivos de barramento internos ou integrados, como dispositivos USB ou 1394

Quando esses tipos de diferenças de hardware existem, o uso dessa configuração pode não reduzir o tempo de instalação, mesmo se você contornar possíveis conflitos de driver.

Diferenças de alto risco

Para as principais diferenças de hardware, não use a configuração PersistAllDeviceInstalls . Entre elas, podemos incluir:

  • Chipset motherboard ou marca de CPU

  • Controladores de armazenamento

  • Diferenças de fator forma, como uma alteração de uma área de trabalho para um laptop ou de um laptop para uma área de trabalho

  • Diferenças de layout de teclado, como uma alteração de um teclado padrão de 101 teclas para um teclado japonês de 106 teclas

  • Quaisquer outros dispositivos que estejam no caminho de enumeração do volume de inicialização do Windows

Tipos de problemas que podem ocorrer com uma alteração de configuração de hardware

Mesmo diferenças aparentemente pequenas na configuração de hardware ou hardware podem causar problemas graves ou facilmente negligenciados, como estes:

  • Instabilidade do sistema

  • Incapacidade de usar algumas das funcionalidades básicas ou estendidas de um dispositivo

  • Tempos de inicialização estendidos e tempos de instalação estendidos

  • Dispositivos com nomes incorretos na pasta Dispositivos e Impressoras, Gerenciador de Dispositivos e outras interfaces de usuário relacionadas ao dispositivo

  • Problemas graves do sistema que deixam o computador em um estado não inicializável

Diferenças de configuração de hardware que podem causar falhas de inicialização do sistema

Quando o hardware crítico de inicialização não é idêntico no computador de referência e nos computadores de destino, o uso da configuração PersistAllDeviceInstalls pode causar problemas graves no sistema que podem deixar o computador em um estado não inicializável.

Pacotes de driver críticos de inicialização podem pertencer a qualquer uma das seguintes classes de configuração de dispositivo Windows, conforme identificado pela diretiva ClassGUID na <seção Versão> dos arquivos .inf em seus pacotes de driver.

Classe de configuração de dispositivo fornecida pelo sistema ClassGUID

Sistema

{4D36E97D-E325-11CE-BFC1-08002BE10318}

Computador

{4D36E966-E325-11CE-BFC1-08002BE10318}

Processador

{50127DC3-0F36-415E-A6CC-4CB3BE910B65}

PCMCIA

{4D36E977-E325-11CE-BFC1-08002BE10318}

HDC

{4D36E96A-E325-11CE-BFC1-08002BE10318}

SCSIAdapter

{4D36E97B-E325-11CE-BFC1-08002BE10318}

DiskDrive

{4D36E967-E325-11CE-BFC1-08002BE10318}

CDROM

{4D36E965-E325-11CE-BFC1-08002BE10318}

FDC

{4D36E969-E325-11CE-BFC1-08002BE10318}

DisqueteDisk

{4D36E980-E325-11CE-BFC1-08002BE10318}

Volume

{71A27CDD-812A-11D0-BEC7-08002BE2092F}

USB

{36FC9E60-C465-11CF-8056-444553540000}

SBP2

{D48179BE-EC20-11D1-B6B8-00C04FA372A7}

1394

{6BDD1FC1-810F-11D0-BEC7-08002BE2092F}

Enum1394

{C459DF55-DB08-11D1-B009-00A0C9081FF6}

Keyboard

{4D36E96B-E325-11CE-BFC1-08002BE10318}

Mouse

{4D36E96F-E325-11CE-BFC1-08002BE10318}

HIDClass

{745A17A0-74D3-11D0-B6FE-00A0C90F57DA}

Portas

{4D36E978-E325-11CE-BFC1-08002BE10318}

Para obter mais informações sobre essas classes de configuração de dispositivo, consulte Classes de instalação de dispositivo fornecidas pelo sistema no MSDN.

Hardware não detectável

Quando você implanta um novo computador em um usuário final, alguns hardwares, como um dispositivo removível ou um dispositivo que tem um comutador ativado/desativado, podem não estar presentes ou detectados durante a primeira inicialização. Por padrão, na primeira inicialização, a Instalação do Windows remove o estado do dispositivo pré-configurado para hardware não detectado.

Para implantar hardware que pode não estar presente ou detectado na primeira inicialização, adicione todos os drivers de dispositivo aplicáveis à imagem de referência, conecte ou ative os dispositivos aplicáveis para que o Windows possa instalá-los e use a configuração Microsoft-Windows-PnpSysprep/DoNotCleanUpNonPresentDevices ao capturar a imagem.

Importante O uso da configuração DoNotCleanUpNonPresentDevices pode levar ao armazenamento desnecessário de estados de dispositivo em excesso e contribuir para tempos de inicialização mais lentos.

Solução de problemas de conflitos de driver

Para evitar conflitos de driver entre pacotes de driver independentes críticos de inicialização, o IHV deve garantir que cada driver de dispositivo use nomes de serviço diferentes, valores de chave do Registro e nomes de arquivo binários.

Exemplo de um possível conflito de driver

No exemplo a seguir, um IHV fictício chamado Fabrikam produz dois tipos de controladores de armazenamento: StandardController e ExtremeController. A Fabrikam pressupõe que apenas um tipo de controlador de armazenamento esteja instalado por vez em um computador específico.

O pacote de driver define as configurações StandardController e ExtremeController para usar o mesmo nome de serviço de driver, storctrl. O serviço de driver storctrl usa configurações de serviço diferentes que mudam dependendo de qual hardware (StandardController ou ExtremeController) está instalado. Como StandardController e ExtremeController usam o mesmo serviço, eles não podem coexistir.

Este exemplo mostra o conteúdo do arquivo de pacote de driver Storctrl.inf:

[Version]
Signature = "$WINDOWS NT$"
Class = SCSIAdapter
ClassGuid = {4D36E97B-E325-11CE-BFC1-08002BE10318}
...
[Manufacturer]
%Fabrikam% = Fabrikam,NTx86

[Fabrikam.NTx86]
%StandardController% = StandardController_DDInstall,PCI\VEN_ABCD&DEV_0001
%ExtremeController%  = ExtremeController_DDInstall, PCI\VEN_ABCD&DEV_0002

...

[StandardController_DDInstall.Services]
AddService = storctrl,0x00000002,StandardController_ServiceInstall

[StandardController_ServiceInstall]
ServiceType  = 1 ; SERVICE_KERNEL_DRIVER
StartType    = 0 ; SERVICE_BOOT_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ImagePath    = %12%\storctrl.sys
AddReg       = StandardController_ServiceSettings

[StandardController_ServiceSettings]
HKR,Settings,LowPowerMode,0x00010001,1
HKR,Settings,ErrorCorrection,0x00010001,1

...

[ExtremeController_DDInstall.Services]
AddService = storctrl,0x00000002,ExtremeController_ServiceInstall

[ExtremeController_ServiceInstall]
ServiceType  = 1 ; SERVICE_KERNEL_DRIVER
StartType    = 0 ; SERVICE_BOOT_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ImagePath    = %12%\storctrl.sys
AddReg       = ExtremeController_ServiceSettings

[ExtremeController_ServiceSettings]
HKR,Settings,LowPowerMode,0x00010001,0
HKR,Settings,ErrorCorrection,0x00010001,4
...

Se StandardController estiver no computador de referência e suas configurações forem mantidas durante a captura de imagem, o serviço de driver storctrl será pré-configurado. Se ExtremeController estiver no computador de destino, o Windows poderá usar as configurações e os arquivos pré-configurados destinados ao StandardController. Isso pode provocar resultados inesperados.

O IHV pode ajudar a resolve o conflito usando uma destas opções:

  • Crie pacotes de driver separados que tenham arquivos .inf separados para cada configuração e importe apenas o pacote de driver necessário para a imagem do Windows durante a implantação. Por exemplo, divida Storctrl.inf em dois arquivos .inf separados, uma versão para StandardController e uma versão para ExtremeController e importe apenas o pacote de driver necessário para a imagem do Windows.
  • Crie outro serviço no pacote de driver para cada configuração. Dê a cada serviço um nome diferente (por exemplo, storctrl e storctrlx) e aponte para um arquivo de imagem binária diferente (por exemplo, Storctrl.sys e Storctrlx.sys).

Visão geral de drivers de dispositivo e implantação