Comprendre le démarrage PXE dans Configuration Manager

Cet article décrit les processus de base de démarrage PXE (Preboot Execution Environment) dans Configuration Manager, comment ils fonctionnent et comment ils interagissent entre eux.

Version du produit d’origine : Configuration Manager (Current Branch), Microsoft System Center 2012 R2 Configuration Manager, Microsoft System Center 2012 Configuration Manager
Numéro de la base de connaissances d’origine : 4468601

Introduction

Le démarrage de l’environnement pXE (Preboot Execution Environment) dans System Center 2012 Configuration Manager (ConfigMgr 2012 ou ConfigMgr 2012 R2) et versions ultérieures permet aux administrateurs d’accéder facilement à l’environnement de préinstallation Windows (WinPE) sur le réseau via PXE. PXE est un standard du secteur créé par Intel qui fournit des services de prédémarrage dans le microprogramme des appareils qui permettent aux appareils de télécharger des programmes de démarrage réseau sur les ordinateurs clients.

Configuration Manager s’appuie sur le rôle serveur Des services de déploiement Windows (WDS) via le fournisseur PXE WDS. Dans ConfigMgr 2012 et versions ultérieures, le fournisseur SMS PXE (SMSPXE) s’inscrit auprès du service WDS et fournit la logique pour les demandes du client PXE.

Avant de résoudre les problèmes liés à PXE dans Configuration Manager, il est important de comprendre les processus de base impliqués, comment ils fonctionnent et comment ils interagissent entre eux.

Dans tous les cas de ce document, nous utilisons System Center 2012 Configuration Manager R2 Cumulative Update 2 (ConfigMgr 2012 R2 CU2) et un système de site distant installé sur Windows Server 2012 avec le rôle Point de distribution (DP) installé.

Installation du point de service PXE

Nous allons d’abord examiner les processus impliqués dans l’installation du fournisseur SMSPXE.

L’installation est lancée en sélectionnant l’option Activer la prise en charge PXE pour les clients sous l’onglet PXE dans Propriétés du point de distribution. Lorsque la prise en charge PXE est activée, une instance de classe SMS_SCI_SysResUse est créée.

SMSProv.log  
PutInstanceAsync SMS_SCI_SysResUseSMS Provider04/09/2014 11:30:131552 (0x0610)  
CExtProviderClassObject::DoPutInstanceInstanceSMS Provider04/09/2014 11:30:131552 (0x0610)  
INFO: 'RemoteDp.contoso.com' is a valid FQDN.SMS Provider04/09/2014 11:30:131552 (0x0610)

Dans l’espace de noms Root\SMS\Site_RR2 WMI (où RR2 est le code de site du site), la SMS_SCI_SYSResUse classe contient tous les rôles de système de site sur le serveur de site principal. Vous pouvez exécuter la requête suivante dans WBEMTEST pour identifier tous les fournisseurs de services sur ce serveur de site :

SELECT * FROM SMS_SCI_SysResUse WHERE rolename like 'SMS Distribution Point'

La modification des propriétés de ces rôles via le Kit de développement logiciel (SDK) modifie le fichier de contrôle de site et configure le dp. Le IsPXE nom de la propriété est membre de la propriété props et est défini sur 1 lorsque le dp est activé par PXE.

Le composant Moniteur de base de données SMS détecte la modification apportée aux DPNotificaiton tables et et DistributionPoints supprime les fichiers dans distmgr.box :

Smsdbmon.log  
RCV:UPDATE on SiteControl for SiteControl_AddUpd_HMAN [RR2 ][19604]  
RCV: UPDATE on SiteControl for SiteControl_AddUpd_SiteCtrl [RR2 ][19605]  
SND: Dropped C:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\RR2.SCU [19604]  
SND: Dropped C:\Program Files\Microsoft Configuration Manager\inboxes\sitectrl.box\RR2.CT0 [19605]  
RCV: UPDATE on Sites for Sites_Interop_Update_HMAN [RR2 ][19606]  
SND: Dropped C:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\RR2.ITC [19606]  
RCV: UPDATE on DistributionPoints for DP_Properties_Upd [15 ][19607]  
RCV: INSERT on PkgNotification for PkgNotify_Add [RR200002 ][19608]  
RCV: INSERT on PkgNotification for PkgNotify_Add [RR200003 ][19609]  
RCV: INSERT on DPNotification for DPNotify_ADD [15 ][19610]  
RCV: UPDATE on SiteControlNotification for SiteCtrlNot_Add_DDM [RR2 ][19611]  
SND: Dropped C:\Program Files\Microsoft Configuration Manager\inboxes\distmgr.box\15.NOT [19607]  
SND: Dropped C:\Program Files\Microsoft Configuration Manager\inboxes\distmgr.box\RR200002.PKN [19608]  
SND: Dropped C:\Program Files\Microsoft Configuration Manager\inboxes\distmgr.box\RR200003.PKN [19609]  
SND: Dropped C:\Program Files\Microsoft Configuration Manager\inboxes\distmgr.box\15.DPN [19610]  
Site Control Notification.

Le composant Gestionnaire de distribution sur le serveur de site principal lance ensuite la configuration du dp distant :

ConfigureDPSMS_DISTRIBUTION_MANAGER04/09/2014 11:30:263776 (0x0EC0)  
IISPortsList in the SCF is "80".SMS_DISTRIBUTION_MANAGER04/09/2014 11:30:263776 (0x0EC0)  
ISSSLPortsList in the SCF is "443".SMS_DISTRIBUTION_MANAGER04/09/2014 11:30:263776 (0x0EC0)  
IISWebSiteName in the SCF is "".SMS_DISTRIBUTION_MANAGER04/09/2014 11:30:263776 (0x0EC0)  
IISSSLState in the SCF is 448.SMS_DISTRIBUTION_MANAGER04/09/2014 11:30:263776 (0x0EC0)  
DP registry settings have been successfully updated on RemoteDp.contoso.com  
SMS_DISTRIBUTION_MANAGER04/09/2014 11:30:263776 (0x0EC0)  
ConfigurePXESMS_DISTRIBUTION_MANAGER04/09/2014 11:30:263776 (0x0EC0)

Dans le journal fournisseur SMS DP sur le dp distant, nous pouvons voir les informations suivantes sur l’installation PXE, où la PxeInstalled clé de Registre est initialement introuvable :

Smsdpprov.log  
[66C][Thu 09/04/2014 11:30:28]:CcmInstallPXE  
[66C][Thu 09/04/2014 11:30:28]:RegQueryValueExW failed for Software\Microsoft\SMS\DP, PxeInstalled  
[66C][Thu 09/04/2014 11:30:28]:RegReadDWord failed; 0x80070002

Le Visual C++ Redistributable est installé :

Smsdpprov.log  
[66C][Thu 09/04/2014 11:30:28]:Running: C:\SMS_DP$\sms\bin\vcredist_x64.exe /q /log "C:\SMS_DP$\sms\bin\vcredist.log"  
[66C][Thu 09/04/2014 11:30:28]:Waiting for the completion of: C:\SMS_DP$\sms\bin\vcredist_x64.exe /q /log "C:\SMS_DP$\sms\bin\vcredist.log"  
[66C][Thu 09/04/2014 11:30:39]:Run completed for: C:\SMS_DP$\sms\bin\vcredist_x64.exe /q /log "C:\SMS_DP$\sms\bin\vcredist.log"

WDS est installé :

Smsdpprov.log  
[66C][Thu 09/04/2014 11:30:39]:Created the DP mutex key for WDS.  
[66C][Thu 09/04/2014 11:30:39]:Failed to open WDS service.  
[66C][Thu 09/04/2014 11:30:39]:WDS is NOT INSTALLED  
[66C][Thu 09/04/2014 11:30:39]:Installing WDS.  
[66C][Thu 09/04/2014 11:30:39]:Running: ServerManagerCmd.exe -i WDS -a  
[66C][Thu 09/04/2014 11:30:39]:Failed (2) to run: ServerManagerCmd.exe -i WDS -a  
[66C][Thu 09/04/2014 11:30:39]:Running: PowerShell.exe -Command Import-Module ServerManager; Get-WindowsFeature WDS; Add-WindowsFeature WDS  
[66C][Thu 09/04/2014 11:30:39]:Waiting for the completion of: PowerShell.exe -Command Import-Module ServerManager; Get-WindowsFeature WDS; Add-WindowsFeature WDS  
[66C][Thu 09/04/2014 11:31:35]:Run completed for: PowerShell.exe -Command Import-Module ServerManager; Get-WindowsFeature WDS; Add-WindowsFeature WDS  
[66C][Thu 09/04/2014 11:31:35]:Successfully installed WDS.

Les filtres de lecture TFTP sont configurés :

Smsdpprov.log  
[66C][Thu 09/04/2014 11:31:35]:Setting TFTP config key as: System\CurrentControlSet\Services\WDSSERVER\Providers\WDSTFTP  
[66C][Thu 09/04/2014 11:31:35]:Configuring TFTP read filters  
[66C][Thu 09/04/2014 11:31:35]:SetupComplete is set to 0

Le REMINST partage est créé et WDS est configuré :

Smsdpprov.log  
[66C][Thu 09/04/2014 11:31:35]:RegQueryValueExW failed for Software\Microsoft\Windows\CurrentVersion\Setup, REMINST  
[66C][Thu 09/04/2014 11:31:35]:RegReadDWord failed; 0x80070002  
[66C][Thu 09/04/2014 11:31:35]:REMINST not set in WDS  
[66C][Thu 09/04/2014 11:31:35]:WDS is NOT Configured  
[66C][Thu 09/04/2014 11:31:35]:Share (REMINST) does not exist. (NetNameNotFound) (0x00000906)  
[66C][Thu 09/04/2014 11:31:35]:GetFileSharePath failed; 0x80070906  
[66C][Thu 09/04/2014 11:31:35]:REMINST share does not exist. Need to create it.  
[66C][Thu 09/04/2014 11:31:35]:Enumerating drives A through Z for the NTFS drive with the most free space.  
[66C][Thu 09/04/2014 11:31:37]:Drive 'C:\' is the best drive for the SMS installation directory.  
[66C][Thu 09/04/2014 11:31:37]:Creating REMINST share to point to: C:\RemoteInstall  
[66C][Thu 09/04/2014 11:31:37]:Succesfully created share REMINST  
[66C][Thu 09/04/2014 11:31:37]:Removing existing PXE related directories  
[66C][Thu 09/04/2014 11:31:37]:Registering WDS provider: SourceDir: C:\SMS_DP$\sms\bin  
[66C][Thu 09/04/2014 11:31:37]:Registering WDS provider: ProviderPath: C:\SMS_DP$\sms\bin\smspxe.dll  
[66C][Thu 09/04/2014 11:31:37]:DoPxeProviderRegister  
[66C][Thu 09/04/2014 11:31:37]:PxeLoadWdsPxe  
[66C][Thu 09/04/2014 11:31:37]:Loading wdspxe.dll from C:\Windows\system32\wdspxe.dll  
[66C][Thu 09/04/2014 11:31:37]:wdspxe.dll is loaded  
[66C][Thu 09/04/2014 11:31:37]:PxeProviderRegister has suceeded (0x00000000)  
[66C][Thu 09/04/2014 11:31:37]:Disabling WDS/RIS functionality  
[66C][Thu 09/04/2014 11:31:39]:WDSServer status is 1  
[66C][Thu 09/04/2014 11:31:39]:WDSServer is NOT STARTED  
[66C][Thu 09/04/2014 11:31:39]:Running: WDSUTIL.exe /Initialize-Server /REMINST:"C:\RemoteInstall"  
[66C][Thu 09/04/2014 11:31:39]:Waiting for the completion of: WDSUTIL.exe /Initialize-Server /REMINST:"C:\RemoteInstall"  
[66C][Thu 09/04/2014 11:31:50]:Run completed for: WDSUTIL.exe /Initialize-Server /REMINST:"C:\RemoteInstall"  
[66C][Thu 09/04/2014 11:31:50]:CcmInstallPXE: Deleting the DP mutex key for WDS.  
[66C][Thu 09/04/2014 11:31:50]:Installed PXE  
[66C][Thu 09/04/2014 11:32:03]:CcmInstallPXE  
[66C][Thu 09/04/2014 11:32:03]:PXE provider is already installed.  
[66C][Thu 09/04/2014 11:32:03]:Installed PXE

Sur le DP distant, nous pouvons maintenant voir les valeurs suivantes ajoutées dans HKEY_LOCAL_MACHINE\Software\Microsoft\SMS\DP:

Capture d’écran des valeurs ajoutées dans le registre.

Remarque

PxeInstalled et IsPXE sont définis sur 1.

Si nous examinons le système de fichiers du dp distant, il existe une nouvelle connexion C:\SMS_DP$\sms\logs:

SMSPXE.log  
Machine is running Windows Longhorn. (NTVersion=0X602, ServicePack=0)  
Cannot read the registry value of MACIgnoreListFile (00000000)  
MAC Ignore List Filename in registry is empty  
Begin validation of Certificate [Thumbprint B64B9DAF9BFB76A99DC050C21E33B3489643D111] issued to 'e728f6ce-29a6-4ac3-974e-ba3dc855d9a4'  
Completed validation of Certificate [Thumbprint B64B9DAF9BFB76A99DC050C21E33B3489643D111] issued to 'e728f6ce-29a6-4ac3-974e-ba3dc855d9a4'

Le point de distribution doit maintenant être compatible PXE et prêt à accepter les demandes entrantes.

Ajouter des images de démarrage à un dp compatible PXE

Chaque fois qu’un nouveau point de distribution PXE est configuré, des étapes supplémentaires doivent être effectuées pour activer toutes les fonctionnalités. L’une d’elles est que vous devez distribuer les images de démarrage x86 et x64 au nouveau dp compatible PXE.

Pour ce faire, accédez à Images dedémarrage de la bibliothèque> de logiciels Systèmesd’exploitation>> Image de démarrage (x86), puis cliquez avec le bouton droit et sélectionnez Distribuer le contenu>Ajouter l’image de démarrage au dp compatible PXE. Répétez ce processus pour l’image de démarrage (x64).

Une fois cette opération effectuée, le Gestionnaire de distribution commence à traiter la demande et lance la distribution vers le dp distant :

DistMgr.log  
Found notification for package 'RR200004'Used 0 out of 30 allowed processing threads.  
Starting package processing thread, thread ID = 0x152C (5420)  
Start adding package to server ["Display=\\RemoteDp.contoso.com\"]MSWNET:["SMS_SITE=RR2"]\\RemoteDp.contoso.com\...  
Attempting to add or update a package on a distribution point.  
Successfully made a network connection to \\RemoteDp.contoso.com\ADMIN$.  
CreateSignatureShare, connecting to DP  
Signature share exists on distribution point path \\RemoteDp.contoso.com\SMSSIG$  
Share SMSPKGC$ exists on distribution point \\RemoteDp.contoso.com\SMSPKGC$  
Checking configuration of IIS virtual directories on DP ["Display=\\RemoteDp.contoso.com\"]MSWNET:["SMS_SITE=RR2"]\\RemoteDp.contoso.com\  
Creating, reading or updating IIS registry key for a distribution point.  
Virtual Directory SMS_DP_SMSSIG$ for the physical path C:\SMSSIG$ already exists.  
Created package transfer job to send package RR200004 to distribution point ["Display=\\RemoteDp.contoso.com\"]MSWNET:["SMS_SITE=RR2"]\\RemoteDp.contoso.com\.  
StoredPkgVersion (9) of package RR200004. StoredPkgVersion in database is 9.  
SourceVersion (9) of package RR200004. SourceVersion in database is 9.

Package Transfer Manager (le dp est distant) lance ensuite l’envoi du contenu :

PkgXferMgr.log  
DeleteJobNotificationFiles deleted 1 *.PKN file(s) this cycle.  
Found send request with ID: 105, Package: RR200004, Version:9, Priority: 2, Destination: REMOTEDP.CONTOSO.COM, DPPriority: 200  
Created sending thread (Thread ID = 0x1140)  
Sending thread starting for Job: 105, package: RR200004, Version: 9, Priority: 2, server: REMOTEDP.CONTOSO.COM, DPPriority: 200  
Sending legacy content RR200004.9 for package RR200004  
Finished sending SWD package RR200004 version 9 to distribution point REMOTEDP.CONTOSO.COM  
Sent status to the distribution manager for pkg RR200004, version 9, status 3 and distribution point ["Display=\\RemoteDp.contoso.com\"]MSWNET:["SMS_SITE=RR2"]\\RemoteDp.contoso.com\  
StateTable::CState::Handle - (8210:1 2014-09-10 13:19:12.087+00:00) >> (8203:3 2013-11-26 15:43:48.108+00:00)  
Successfully send state change notification 7F6041B0-3EE2-427F-AB72-B89610A6331C  
Sending thread complete

Le fournisseur de points de distribution SMS déploie ensuite le WIM dans le répertoire d’installation à distance :

Smsdpprov.log  
[468][Wed 09/10/2014 14:09:59]:A DP usage gathering task has been registered successfully  
[99C][Wed 09/10/2014 14:19:07]:Content 'RR200004.9' for package 'RR200004' has been added to content library successfully  
[99C][Wed 09/10/2014 14:19:07]:Expanding C:\SCCMContentLib\FileLib\E8A1\E8A136A1348B4CFE97334D0F65934845F2B4675D0B7D925AB830378F4ECF39B9 from package RR200004  
[99C][Wed 09/10/2014 14:19:07]:Finding Wimgapi.Dll  
[99C][Wed 09/10/2014 14:19:07]:Found C:\Windows\system32\wimgapi.dll  
[99C][Wed 09/10/2014 14:19:07]:Expanding RR200004 to C:\RemoteInstall\SMSImages

SMSPXE découvre la nouvelle image :

SMSPXE.log  
Found new image RR200004  
PXE::CBootImageManager::QueryWIMInfo  
Loaded C:\Windows\system32\wimgapi.dll  
Opening image file C:\RemoteInstall\SMSImages\RR200004\boot.RR200004.wim  
Found Image file: C:\RemoteInstall\SMSImages\RR200004\boot.RR200004.wim  
PackageID: RR200004  
ProductName: Microsoft® Windows® Operating System  
Architecture: 0  
Description: Microsoft Windows PE (x86)  
Version:  
Creator:  
SystemDir: WINDOWS  
Closing image file C:\RemoteInstall\SMSImages\RR200004\boot.RR200004.wim  
PXE::CBootImageManager::InstallBootFilesForImage  
Temporary path to copy extract files from: C:\RemoteInstall\SMSTempBootFiles\RR200004.

Assurez-vous que ces images de démarrage sont configurées pour être déployées à partir du dp compatible PXE. Cliquez avec le bouton droit sur l’image de démarrage, sélectionnez Propriétés>source de données, puis sélectionnez Déployer cette image de démarrage à partir du point de distribution compatible PXE.

Processus de démarrage PXE

L’exemple de processus de démarrage décrit ici implique trois machines : le serveur DHCP, le DP compatible PXE et le client (un ordinateur BIOS x64). Tous se trouvent sur le même sous-réseau.

Remarque

Vous devez vous assurer que les ports DHCP (67 et 68), TFTP (69) et BINL (4011) sont ouverts entre l’ordinateur client, le serveur DHCP et le dp compatible PXE.

Dans le processus de démarrage PXE, le client doit d’abord acquérir les paramètres TCP/IP et l’emplacement du serveur de démarrage TFTP. Une fois qu’un appareil est sous tension et termine l’opération POST, il commence le processus de démarrage PXE (invité via le menu de sélection de démarrage).

  1. La première chose que fait le microprogramme PXE est d’envoyer une diffusion DHCPDISCOVER (un paquet UDP) pour obtenir les détails TCP/IP. Cela inclut une liste de demandes de paramètres, et voici un exemple de trace réseau avec la liste des paramètres d’un paquet DHCPDISCOVER :

    Capture d’écran d’un exemple de trace réseau avec la liste de paramètres d’un paquet DHCPDISCOVER.

    Le client PXE identifie ensuite le fournisseur et les informations spécifiques à l’ordinateur afin qu’il puisse demander l’emplacement et le nom de fichier du fichier image de démarrage approprié.

  2. Le serveur DHCP et le dp compatible PXE envoient ensuite un DHCPOFFER au client contenant tous les paramètres TCP/IP appropriés.

    Dans l’exemple d’offre DHCP ci-dessous, elle ne contient pas le nom du serveur ou les informations de fichier de démarrage, car il s’agit de l’offre du serveur DHCP plutôt que du DP compatible PXE.

    Capture d’écran montrant DHCP sans nom de serveur ni informations de fichier de démarrage.

  3. Le client répond ensuite avec un DHCPREQUEST une fois qu’il a sélectionné un DHCPOFFER. Il contient l’adresse IP de l’offre sélectionnée.

  4. Le serveur DHCP répond à dhcpREQUEST avec un DHCPACK qui contient les mêmes détails que DHCPOFFER. Le nom d’hôte du serveur et le nom du fichier de démarrage ne sont pas fournis ici :

    Capture d’écran montrant DHCPACK contient les mêmes détails que DHCPOFFER.

  5. À ce stade, nous n’avons toujours pas les informations du fichier de démarrage, mais maintenant le client dispose d’une adresse IP. Ensuite, le client PXE envoie un nouveau DHCPREQUEST au dp compatible PXE après avoir reçu un DHCPOFFER de la diffusion DHCPDISCOVER précédente.

  6. Le dp compatible PXE envoie un DHCPACK qui contient l’emplacement BootFileName et le programme de démarrage réseau WDS (NBP).

    Capture d’écran montrant DHCPACK contient BootFileName et le programme de démarrage réseau WDS.

Téléchargement des fichiers de démarrage

  1. Une fois la conversation DHCP terminée, le client démarre la session TFTP avec une demande de lecture :

    Capture d’écran montrant la session TFTP avec une demande de lecture.

    Le serveur répond avec le tsize, puis le blksize. Le client transfère ensuite le fichier à partir du serveur.

    Remarque

    La taille de ces blocs est la valeur blksize et, dans ce cas, elle est définie sur 1 456 octets. Le blksize est configurable sur Windows Server 2008 et versions ultérieures. Consultez Échec du déploiement du système d’exploitation sur un réseau à l’aide de WDS dans Windows Server 2008 et Windows Server 2008 R2.

    Ici, nous pouvons voir la fin de la conversation DHCP et le début du transfert TFTP :

    Capture d’écran montrant la fin de la conversation DHCP et le début du transfert TFTP.

    Lorsque le programme de démarrage réseau WDS (NBP) a été transféré vers l’ordinateur client, il est exécuté. Dans notre exemple, il commence par télécharger wdsnbp.com. Le NBP détermine si le client peut démarrer à partir du réseau, si le client doit appuyer sur F12 pour lancer le démarrage et l’image de démarrage que le client recevra.

    Les PNB sont spécifiques à l’architecture et au microprogramme (BIOS ou UEFI). Sur les ordinateurs BIOS, le NBP est une application 16 bits en mode réel. Par conséquent, il est possible d’utiliser le même NBP pour les systèmes d’exploitation x86 et x64.

    Dans notre cas (un ordinateur BIOS x64), le NBP se trouve dans le répertoire suivant sur le dp compatible PXE : \\remotedp\c$\RemoteInstall\SMSBoot\x64

    Capture d’écran montrant l’emplacement NBP WDS.

    Les fichiers exécutent les fonctions suivantes :

    • PXEboot.com - BIOS x86 et x64 : nécessite que l’utilisateur final appuie sur F12 pour que le démarrage PXE continue (il s’agit du NBP par défaut).

    • PXEboot.n12 - BIOS x86 et x64 : commence immédiatement le démarrage PXE (ne nécessite pas d’appuyer sur F12 sur le client).

    • AbortPXE.com - BIOS x86 et x64 : permet à l’appareil de démarrer immédiatement à l’aide du périphérique de démarrage suivant spécifié dans le BIOS. Cela permet aux appareils qui ne doivent pas démarrer à l’aide de PXE de commencer immédiatement leur processus de démarrage secondaire sans attendre un délai d’expiration.

    • Bootmgfw.efi - x64 UEFI et IA64 UEFI : la version EFI de PXEboot.com ou PXEboot.n12 (dans EFI, le choix du démarrage PXE est géré dans l’interpréteur de commandes EFI et non par le NBP). Bootmgfw.efiéquivaut à combiner les fonctionnalités de PXEboot.com, PXEboot.n12abortpxe.com et bootmgr.exe.

    • wdsnbp.com - BIOS x86 et x64 : un NBP spécial développé pour être utilisé par les services de déploiement Windows qui sert les objectifs généraux suivants :

      • Détection de l’architecture
      • Scénarios d’appareils en attente
    • Wdsmgfw.efi - UEFI x64 et UEFI IA64 : un NBP spécial développé pour une utilisation par les services de déploiement Windows qui sert les objectifs généraux suivants :

      • Handles invitant l’utilisateur à appuyer sur une touche pour continuer le démarrage PXE
      • Scénarios d’appareils en attente
  2. Le NBP télécharge le chargeur du système d’exploitation et les fichiers de démarrage via TFTP, qui incluent les éléments suivants :

    • smsboot\x64\pxeboot.com
    • smsboot\x64\bootmgr.exe
    • \SMSBoot\Fonts\wgl4_boot.ttf
    • \SMSBoot\boot.sdi
    • \SMSImages\RR200004\boot.RR200004.wim
  3. Un RAMDISK est créé à l’aide de ces fichiers et du fichier WIM WinPE en mémoire.

    Diagramme montrant que RAMDISK est créé.

  4. Le client démarre à partir de RAMDISK.

Démarrage WinPE

Une fois WinPE démarré, l’interpréteur de commandes de démarrage TS est lancé à partir du dossier SMS inclus dans l’image WinPE (ce dossier est injecté dans le WIM de démarrage lorsqu’il est importé dans Configuration Manager). Vous pouvez voir ce processus connecté SMSTS.log qui se trouve sous X:\Windows\Temp\SMSTSLog\.

Conseil

Pour accéder à cette connexion WinPE, activez l’invite de commandes sur l’image de démarrage. Pour ce faire, cliquez avec le bouton droit surPersonnalisationdes propriétés> de l’image> de démarrage, puis case activée Activer la prise en charge des commandes (test uniquement). Vous pouvez ensuite accéder à l’invite de commandes en appuyant sur F8 dans WinPE.

Voici le processus initial de l’interpréteur de commandes de démarrage TS :

SMSTS.log  
========================[ TSBootShell.exe ]========================  
Succeeded loading resource DLL 'X:\sms\bin\i386\1033\TSRES.DLL'  
Debug shell is enabled  
Waiting for PNP initialization...  
RAM Disk Boot Path: NET(0)\SMSIMAGES\RR200004\BOOT.RR200004.WIM  
Booted from network (PXE)  
Network(PXE) path: X:\sms\data\  
Found config path X:\sms\data\  
This is not a fixed non usb disk  
Booting from removable media, not restoring bootloaders on hard drive  
X:\sms\data\WinPE does not exist.  
X:\_SmsTsWinPE\WinPE does not exist.  
Executing command line: wpeinit.exe -winpe  
The command completed successfully.  
Starting DNS client service.  
Executing command line: X:\sms\bin\i386\TsmBootstrap.exe /env:WinPE /configpath:X:\sms\data\  
The command completed successfully.

Suivi de la sangle de démarrage du Gestionnaire de séquences de tâches :

SMSTS.log  
========================[ TSMBootStrap.exe ]========================  
Command line: X:\sms\bin\i386\TsmBootstrap.exe /env:WinPE /configpath:X:\sms\data\  
Succeeded loading resource DLL 'X:\sms\bin\i386\1033\TSRES.DLL'  
Succeeded loading resource DLL 'X:\sms\bin\i386\TSRESNLC.DLL'  
Current OS version is 6.2.9200.0  
Adding SMS bin folder "X:\sms\bin\i386" to the system environment PATH  
PXE Boot with Root = X:\  
Executing from PXE in WinPE  
Loading TsPxe.dll from X:\sms\bin\i386\TsPxe.dll

Une fois que TSPXE est chargé, il télécharge les variables TS à l’aide de TFTP :

SMSTS.log  
TsPxe.dll loaded  
Device has PXE booted  
Variable Path: \SMSTemp\2014.09.05.18.20.31.0001.{0C616323-A027-41B0-A215-057AF4F1E361}.boot.var  
Succesfully added firewall rule for Tftp  
Executing: X:\sms\bin\i386\smstftp.exe -i 10.238.0.2 get \SMSTemp\2014.09.05.18.20.31.0001.{0C616323-A027-41B0-A215-057AF4F1E361}.boot.var X:\sms\data\variables.dat  
Executing command line: "X:\sms\bin\i386\smstftp.exe" -i 10.238.0.2 get \SMSTemp\2014.09.05.18.20.31.0001.{0C616323-A027-41B0-A215-057AF4F1E361}.boot.var X:\sms\data\variables.dat  
Process completed with exit code 0  
Succesfully removed firewall rule for Tftp  
Successfully downloaded pxe variable file.  

Loading Media Variables from "X:\sms\data\variables.dat"  
Loading Media Variables from "X:\sms\data\variables.dat"  
Found network adapter "Intel 21140-Based PCI Fast Ethernet Adapter (Emulated)" with IP Address 10.238.0.3.  
Loading Media Variables from "X:\sms\data\variables.dat"  
Loading variables from the Task Sequencing Removable Media.  
Loading Media Variables from "X:\sms\data\variables.dat"  
Succeeded loading resource DLL "X:\sms\bin\i386\1033\TSRES.DLL"  

Setting SMSTSMP TS environment variable  
Setting _SMSMediaGuid TS environment variable  
Setting _SMSTSBootMediaPackageID TS environment variable  
Setting _SMSTSHTTPPort TS environment variable  
Setting _SMSTSHTTPSPort TS environment variable  
Setting _SMSTSIISSSLState TS environment variable  
Setting _SMSTSLaunchMode TS environment variable  
Setting _SMSTSMediaPFX TS environment variable  
Setting _SMSTSPublicRootKey TS environment variable  
Setting _SMSTSRootCACerts TS environment variable  
Setting _SMSTSSiteCode TS environment variable  
Setting _SMSTSSiteSigningCertificate TS environment variable  
Setting _SMSTSUseFirstCert TS environment variable  
Setting _SMSTSx64UnknownMachineGUID TS environment variable  
Setting _SMSTSx86UnknownMachineGUID TS environment variable

À ce stade, TSPXE localise le point de gestion (MP) et télécharge la stratégie avant de présenter l’interface utilisateur pour que l’utilisateur sélectionne la séquence de tâches facultative :

SMSTS.log  
site=RR2, MP=<http://ConfigMgrR2.CONTOSO.COM>, ports: http=80,https=443  
certificates are received from MP.  
CLibSMSMessageWinHttpTransport::Send: URL: ConfigMgrR2.CONTOSO.COM:80 CCM_POST /ccm_system/request  
Request was successful.  
Downloading policy from <http://ConfigMgrR2.CONTOSO.COM>.  
Retrieving Policy Assignments:  
Processing Policy Assignment {7898f153-a6de-43e9-98c3-ca5cc61483b0}.  
Processing Policy Assignment {fba19677-0e9b-490d-b601-07e247979bd4}.  
Processing Policy Assignment {6306ca4c-e7ed-4cf5-8419-af9b1695a909}.  
Processing Policy Assignment {05a027ff-e9cf-4fa1-8bd8-4565481061e2}.  
Processing Policy Assignment {b3c991f6-9f83-43c3-875c-f60c4492d278}.  
...  
Successfully read 152 policy assignments.

Enfin, la collection et les variables de machine sont téléchargées et la page d’accueil est activée :

SMSTS.log  
Retrieving collection variable policy.  
Found 0 collection variables.  
Retrieving machine variable policy.  
Downloading policy body {01000053}-{RR2}.  
Response ID: {01000053}-{RR2}  
Reading Policy Body.  
Parsing Policy Body.  
Found 0 machine variables.  
Setting collection variables in the task sequencing environment.  
Setting machine variables in the task sequencing environment.  
Running Wizard in Interactive mode  
Loading Media Variables from "X:\sms\data\variables.dat"  
Activating Welcome Page.  
Loading bitmap

Plus d’informations

Pour plus d’informations sur la résolution des problèmes de démarrage PXE, consultez les articles suivants :