Share via


Gestire le configurazioni del driver durante l'acquisizione di un'immagine di Windows

Uno scenario di distribuzione comune consiste nell'acquisire un'unica immagine di Windows da un computer di riferimento e quindi applicare l'immagine a un gruppo di computer di destinazione con configurazioni hardware identiche.

Per risparmiare tempo durante l'installazione e velocizzare l'esperienza predefinita (OOBE) per gli utenti finali, è possibile indicare al programma di installazione di Windows di mantenere le configurazioni del driver dal computer di riferimento come parte dell'immagine di Windows. È consigliabile eseguire questa operazione solo quando l'hardware nel computer di riferimento e l'hardware nei computer di destinazione sono identici. Quando si esegue questa operazione, il programma di installazione di Windows gestisce le configurazioni dei driver durante l'acquisizione e la distribuzione di immagini.

Indicare all'installazione di Windows di gestire le configurazioni del driver

Prima di acquisire un'immagine, generalizzare il computer usando un file di risposta che indica all'installazione di Windows di gestire le configurazioni del driver.

Per gestire le configurazioni dei driver usando un file di risposte

  1. Nel computer tecnico aprire Windows System Image Manager (Windows SIM). Fare clic su Start, digitare Windows System Image Manager e quindi selezionare Windows System Image Manager.

  2. Creare un nuovo file di risposta o aggiornare un file di risposte esistente. Per altre informazioni, vedere Creare o aprire un file di risposte e procedure consigliate per la creazione di file di risposta.

  3. Aggiungere l'impostazione Microsoft-Windows-PnpSysprep/PersistAllDeviceInstalls . Per altre informazioni, vedere la sezione Panoramica in questo argomento.

  4. Se il computer ha hardware non rilevabile, includere l'impostazione Microsoft-Windows-PnpSysprep/DoNotCleanUpNonPresentDevices . Per altre informazioni, vedere la sezione Hardware undetectable in questo argomento.

  5. Generalizzare il computer usando il file di risposta. Ad esempio:

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

Panoramica

I pacchetti driver windows in-box includono driver di dispositivo che supportano un'ampia gamma di hardware popolari. Se l'hardware specifico richiede l'avvio di driver di dispositivo aggiuntivi, è possibile preinstallare altri driver di dispositivo nell'immagine di Windows. I fornitori di hardware indipendenti (IHV) spesso forniscono questi driver di dispositivo aggiuntivi insieme all'hardware del dispositivo. Per altre informazioni su come aggiungere driver di dispositivo, vedere Aggiungere un driver online in modalità di controllo.

Per preparare un'immagine di Windows per la distribuzione in più computer, è necessario usare lo strumento Preparazione sistema (Sysprep) per generalizzare l'immagine di Windows. La generalizzazione di un'immagine di Windows rimuove le informazioni specifiche del computer e prepara i driver di dispositivo per il primo avvio. Questa preparazione include questi passaggi:

  • Lo stato del dispositivo per l'hardware viene rimosso.

  • Le impostazioni del driver critici di avvio vengono reimpostate nei valori predefiniti.

  • I file di log dei dispositivi vengono eliminati.

Quando si generalizza il computer, usare un file di risposta con l'impostazione Microsoft-Windows-PnpSysPrep\PersistAllDeviceInstalls per risparmiare tempo. Questa impostazione impedisce alla configurazione di Windows di rimuovere e riconfigurare lo stato del dispositivo per hardware identico. Al primo avvio, i driver di dispositivo rilevati sono già preconfigurati, potenzialmente abilitando un'esperienza di primo avvio più rapida.

Importante Evitare di usare l'impostazione PersistAllDeviceInstalls quando l'hardware e la configurazione hardware nel computer di riferimento non sono identici a quelli dei computer di destinazione. Anche le differenze apparentemente minori nella configurazione hardware o hardware possono causare problemi gravi o facilmente trascurati. Per altre informazioni, vedere la sezione Risoluzione dei problemi relativi alle differenze di configurazione hardware di questo argomento.

È consigliabile non usare l'impostazione PersistAllDeviceInstalls nell'immagine di riferimento primaria. Invece, per ogni gruppo di computer con una configurazione hardware diversa, caricare prima l'immagine di riferimento primaria in un nuovo computer di riferimento con la configurazione hardware pianificata. Acquisire quindi una nuova immagine di questa configurazione e usare l'impostazione PersistAllDeviceInstalls .

Per altre informazioni su come generalizzare l'immagine di Windows, vedere Sysprep (Generalize) un'installazione di Windows.

Procedure consigliate per le revisioni dei driver e la classificazione dei driver

Non mantenere più versioni o revisioni dello stesso pacchetto driver nella stessa immagine. Usare strumenti di manutenzione offline o online per aggiornare i driver.

In genere, quando l'installazione di Windows avvia un computer e più versioni di un pacchetto driver esistono nel computer, il programma di installazione determina il driver da installare usando la classificazione dei driver. Tuttavia, quando si usa l'impostazione PersistAllDeviceInstalls , i normali processi di classificazione dei driver non si verificano. Quindi, i dispositivi che usano driver obsoleti possono rimanere installati. Per altre informazioni sulla classificazione dei driver, vedere How Windows Ranks Drivers on MSDN .For more information about driver ranking, see How Windows Ranks Drivers on MSDN.

Se è necessario aggiungere un driver di dispositivo a un'immagine che usa l'impostazione PersistAllDeviceInstalls , è possibile aggiornare i driver di dispositivo usando uno dei metodi seguenti:

Risoluzione dei problemi relativi alle differenze di configurazione hardware

Per l'impostazione PersistAllDeviceInstalls per funzionare correttamente, la configurazione hardware deve essere identica nel computer di riferimento e nei computer di destinazione. La configurazione hardware include i componenti seguenti:

  • Make e modello hardware.

  • Firmware. Aggiornamenti, revisioni e differenze di configurazione possono causare la segnalazione di alcuni dispositivi di criteri diversi per i driver di dispositivo corrispondenti o l'uso di risorse diverse. Ad esempio:

    • I dispositivi basati su Device Component Interconnect (PCI)-based possono incorporare diversi numeri di revisione del sottosistema nei relativi ID hardware segnalati.

    • Le revisioni BIOS possono modificare lo spazio dei nomi Advanced Configuration and Power Interface (ACPI). In questo modo, il programma di installazione di Windows segnala i dispositivi esistenti in modo diverso o introduce i dispositivi esistenti come nuovi dispositivi.

    • Le differenze di configurazione del sistema BIOS possono causare l'attestazione delle diverse risorse di memoria, I/O, accesso diretto alla memoria (DMA) o richiesta di interruzione (IRQ).

  • Posizione fisica. Le configurazioni hardware devono usare lo stesso slot, porta o numero di socket per connettersi ai dispositivi esterni. Ad esempio:

    • Le schede di espansione PCI devono essere inserite nello stesso numero di slot.

    • I dispositivi USB devono essere connessi o cablati allo stesso numero di porta negli stessi controller host USB e hub integrati.

    • I dispositivi di archiviazione devono essere connessi agli stessi controller e canali di archiviazione.

Differenze a basso rischio, medio rischio e rischio elevato nella configurazione hardware

Quando si usa l'impostazione PersistAllDeviceInstalls , eventuali differenze hardware possono potenzialmente causare problemi. Ma alcune differenze sono più probabile che causano problemi rispetto ad altri.

Differenze a basso rischio

Per i tipi di differenze hardware seguenti, è possibile risolvere potenziali conflitti di driver e usare comunque l'impostazione PersistAllDeviceInstalls :

  • Velocità di clock della CPU

  • Quantità di memoria

  • Capacità del disco rigido

  • Dispositivi di input esterni, ad esempio tastiere e dispositivi del mouse

  • Monitoraggi

Differenze di rischio medio

Per i tipi di differenze hardware seguenti, è consigliabile non usare l'impostazione PersistAllDeviceInstalls :

  • Schede video

  • Unità di archiviazione e lettori multimediali, ad esempio unità ottica e lettori di schede

  • Dispositivi bus interni o integrati, ad esempio dispositivi USB o 1394

Quando questi tipi di differenze hardware esistono, l'uso di questa impostazione potrebbe non ridurre il tempo di installazione, anche se si verificano conflitti di driver potenziali.

Differenze a rischio elevato

Per le principali differenze hardware, non usare l'impostazione PersistAllDeviceInstalls . Ecco alcune di queste differenze:

  • Chipset o CPU della scheda madre

  • Controller di archiviazione

  • Differenze tra fattori di forma, ad esempio un cambiamento da un desktop a un portatile o da un portatile a un desktop

  • Differenze di layout della tastiera, ad esempio una modifica da una tastiera a 101 tasti standard a una tastiera da 106 tasti giapponese

  • Tutti gli altri dispositivi che si trovano nel percorso di enumerazione del volume di avvio di Windows

Tipi di problemi che possono verificarsi con una modifica della configurazione hardware

Anche le differenze apparentemente minori nella configurazione hardware o hardware possono causare problemi gravi o facilmente trascurati, ad esempio:

  • Instabilità del sistema

  • Incapacità di usare alcune delle funzionalità di base o estese di un dispositivo

  • Tempi di avvio estesi e tempi di installazione estesi

  • Dispositivi non denominati nella cartella Dispositivi e stampanti, Gestione dispositivi e altre interfacce utente correlate al dispositivo

  • Problemi di sistema gravi che lasciano il computer in uno stato non avviabile

Differenze di configurazione hardware che possono causare errori di avvio del sistema

Quando l'hardware di avvio critico non è identico nei computer di riferimento e nei computer di destinazione, l'impostazione PersistAllDeviceInstalls può causare gravi problemi di sistema che possono lasciare il computer in uno stato non avviabile.

I pacchetti driver critici di avvio possono appartenere a una delle classi di configurazione del dispositivo Windows seguenti, come identificato dalla direttiva ClassGUID nella <sezione Versione> dei file con estensione inf nei pacchetti driver.

Classe di configurazione del dispositivo fornita dal sistema ClassGUID

Sistema

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

Computer

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

Processore

{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}

FloppyDisk

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

Volume

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

USB

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

SBP2

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

1394

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

Enum1394

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

Tastiera

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

Mouse

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

HIDClass

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

Porte

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

Per altre informazioni su queste classi di configurazione del dispositivo, vedere Classi di installazione del dispositivo fornite dal sistema in MSDN.

Hardware non rilevabile

Quando si distribuisce un nuovo computer a un utente finale, alcuni hardware, ad esempio un dispositivo rimovibile o un dispositivo con un interruttore attivato/disattivato, potrebbero non essere presenti o rilevati durante il primo avvio. Per impostazione predefinita, il programma di installazione di Windows rimuove lo stato del dispositivo preconfigurato per l'hardware non rilevato.

Per distribuire hardware che potrebbero non essere presenti o rilevati per il primo avvio, aggiungere eventuali driver di dispositivo applicabili all'immagine di riferimento, connettersi o attivare i dispositivi applicabili in modo che Windows possa installarli e usare l'impostazione Microsoft-Windows-PnpSysprep/DoNotCleanUpNonPresentDevices quando si acquisisce l'immagine.

Importante L'uso dell'impostazione DoNotCleanUpNonPresentDevices può causare l'archiviazione non necessaria degli stati del dispositivo in eccesso e contribuire a tempi di avvio più lente.

Risoluzione dei problemi relativi ai conflitti dei driver

Per evitare conflitti di driver tra pacchetti driver critici di avvio indipendenti, l'IHV deve assicurarsi che ogni driver di dispositivo usi nomi di servizio diversi, valori delle chiavi del Registro di sistema e nomi di file binari.

Esempio di un potenziale conflitto di driver

Nell'esempio seguente, un IHV fittizio denominato Fabrikam produce due tipi di controller di archiviazione: StandardController e ExtremeController. Fabrikam presuppone che in un determinato computer sia installato un solo tipo di controller di archiviazione.

Il pacchetto driver definisce le configurazioni StandardController e ExtremeController per usare lo stesso nome del servizio driver, storctrl. Il servizio driver storctrl usa impostazioni di servizio diverse che cambiano a seconda dell'hardware (StandardController o ExtremeController) installato. Poiché standardController e ExtremeController usano lo stesso servizio, non possono coesistere.

Questo esempio mostra il contenuto del file del pacchetto 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 si trova nel computer di riferimento e le relative impostazioni vengono mantenute durante l'acquisizione di immagini, il servizio driver storctrl è preconfigurato. Se ExtremeController si trova nel computer di destinazione, Windows può usare le impostazioni e i file preconfigurati destinati a StandardController. Si potrebbero verificare risultati imprevisti.

L'IHV può aiutare a risolvere il conflitto usando una di queste opzioni:

  • Creare pacchetti driver separati con file inf separati per ogni configurazione e importare solo il pacchetto driver richiesto nell'immagine di Windows durante la distribuzione. Ad esempio, dividere Storctrl.inf in due file con estensione inf separati, una versione per StandardController e una versione per ExtremeController e importare solo il pacchetto driver richiesto nell'immagine di Windows.
  • Creare un altro servizio nel pacchetto driver per ogni configurazione. Assegnare a ogni servizio un nome diverso(ad esempio storctrl e storctrlx) e puntare a un file di immagine binario diverso, ad esempio Storctrl.sys e Storctrlx.sys.

Panoramica dei driver e della distribuzione dei dispositivi