Résoudre les problèmes liés aux agents clients WSUS
Cet article vous aide à diagnostiquer et résoudre les problèmes liés aux agents clients Windows Server Update Services (WSUS).
Version du produit d’origine : Windows Server Update Services
Numéro de la base de connaissances d’origine : 10132
Lorsque vous rencontrez des problèmes avec les agents clients WSUS, ils peuvent se manifester de plusieurs façons. Voici quelques problèmes courants :
- Il peut s’agir d’un problème avec les paramètres client de la stratégie de groupe.
- Il peut s’agir d’un problème avec BITS.
- Il peut s’agir d’un problème avec le service de l’agent WSUS.
- Il peut être lié à un problème réseau qui empêche le client d’atteindre le serveur.
- Il peut s’agir d’un problème avec le magasin de l’agent de mise à jour automatique.
- Il peut s’agir d’un problème dans lequel les clients ont des ID clients WSUS dupliqués provoqués par le clonage de disque.
Vérifiez que le client est correctement configuré
Lorsque vous résolvez les problèmes liés à un agent client WSUS, vérifiez d’abord que le client est correctement configuré. Vérifiez que la stratégie de groupe Active Directory appropriée est reçue par le client et que les détails du serveur WSUS sont présents. Pour cela, vous pouvez exécuter la commande suivante :
GPRESULT /V > GPRESULT.TXT
Ouvrez le fichier texte dans le Bloc-notes et recherchez le nom de votre stratégie WSUS. Par exemple, si votre stratégie WSUS est nommée WSUS, vous pouvez la trouver dans le fichier GPRESULT.TXT dans la section Paramètres de l’ordinateur sous le titre Objets de stratégie de groupe appliqués. En voici un exemple :
Applied Group Policy Objects
-----------------------------
Default Domain Policy
WSUS
Local Group Policy
Si les paramètres WSUS ne sont pas présents, les causes possibles sont les suivantes :
- Le système n’a pas la stratégie de groupe du domaine.
- La stratégie de groupe n’est pas ciblée sur le système client.
Pour résoudre ce problème, vérifiez que la stratégie de groupe est correctement mise à jour sur chaque client et que le paramètre WSUS est correctement configuré.
Pour mettre à jour la stratégie de groupe sur le client, exécutez à GPUpdate /force
partir d’une invite de commandes.
Pour plus d’informations sur la configuration de la stratégie de groupe pour les clients WSUS, consultez Configurer les mises à jour automatiques à l’aide de la stratégie de groupe.
Rechercher les problèmes liés à BITS
Le service BITS (Background Intelligent Transfer Service) est le service utilisé par WSUS pour télécharger les mises à jour de Microsoft Update vers le serveur WSUS principal et à partir de serveurs WSUS vers leurs clients. Certains problèmes de téléchargement peuvent être causés par des problèmes avec BITS sur le serveur ou les ordinateurs clients. Lorsque vous résolvez les problèmes de téléchargement, vous devez vous assurer que BITS s’exécute correctement sur tous les ordinateurs concernés.
Le service BITS doit s’exécuter sous le compte LocalSystem par défaut. Pour configurer le service pour qu’il s’exécute sous le compte approprié, procédez comme suit :
Ouvrez une invite de commandes et exécutez la commande suivante :
sc config bits obj= LocalSystem
Un espace doit se produire entre obj= et LocalSystem. Si elle réussit, vous devez recevoir la sortie suivante :
[SC] ChangeServiceConfig SUCCESS
Arrêtez et redémarrez BITS.
Pour afficher l’état du service BITS, ouvrez une invite de commandes et exécutez la commande suivante :
sc query bits
Si BITS est en cours d’exécution, vous devez voir la sortie suivante :
SERVICE_NAME: bits
TYPE: 20 WIN32_SHARE_PROCESS
STATE: 4 RUNNING
Si BITS n’est pas en cours d’exécution, la sortie suivante s’affiche :
SERVICE_NAME: bits
TYPE: 20 WIN32_SHARE_PROCESS
STATE: 1 STOPPED
En règle générale, il est possible de résoudre les problèmes BITS en arrêtant le service et en le redémarrant. Pour arrêter et redémarrer le service BITS, exécutez les commandes suivantes à partir d’une invite de commandes :
sc stop bits
sc start bits
Note
Vous devez être connecté en tant qu’administrateur local pour arrêter et redémarrer BITS.
BITS ne parvient pas à démarrer
Si le service BITS ne parvient pas à démarrer, recherchez toute erreur liée à BITS dans le journal des événements. Vous pouvez utiliser le tableau suivant pour diagnostiquer la cause de ces erreurs.
Nom de l’erreur | Code d'erreur | Description |
---|---|---|
ERROR_SERVICE_DOES_NOT_EXIST | 0x80070424 | Consultez la section relative à la réparation de la configuration BITS ci-dessous. |
ERROR_SERVICE_NOT_IN_EXE | 0x8007043B | BITS n’est pas répertorié comme l’un des services dans le groupe netsvcs svchost |
ERROR_SERVICE_DISABLED | 0x80070422 | BITS a été désactivé. Activez le service BITS. |
ERROR_SERVICE_DEPENDENCY_DELETED ERROR_SERVICE_DEPENDENCY_FAIL | 0x80070433, 0x8007042c | Un service apparaissant dans la liste des dépendances de service BITS ne peut pas être démarré. Vérifiez que la liste des dépendances pour le service BITS est correcte : Windows Vista : RpcSs, EventSystem (également http.sys et LanManWorkstation lorsque la mise en cache d’homologue est activée) Windows Server 2003 : Rpcss, EventSystem Windows XP : Rpcss Windows 2000 : Rpcss, SENS, Wmi |
ERROR_PATH_NOT_FOUND | 0x80070003 | Pré-Windows Vista : %ALLUSERSPROFILE%\Microsoft\Network n’existe pas |
ERROR_FILE_NOT_FOUND | 0x80070002 | La clé Parameters est manquante. Vérifiez que les clés et valeurs suivantes existent :HKLM\SYSTEM\CurrentControlSet\Services\BITS\Parameters\ServiceDll = %SystemRoot%\System32\qmgr.dll |
REGDB_E_CLASSNOTREG, EVENT_E_INTERNALERROR | 0x80040154, 0x80040206 | BITS pour Windows 2000 dépend des services SENS et EventSystem. Si le catalogue COM+ est endommagé, BITS peut échouer avec ce code d’erreur. |
Les travaux BITS échouent
Si le client est correctement configuré pour recevoir des mises à jour, BITS est configuré correctement et BITS semble démarrer et s’exécuter correctement, vous rencontrerez peut-être un problème où les travaux BITS eux-mêmes échouent. Pour le vérifier, recherchez dans le journal des événements toutes les erreurs liées à BITS. Vous pouvez utiliser le tableau suivant pour diagnostiquer la cause de ces erreurs.
Nom de l’erreur | Code d'erreur | Description |
---|---|---|
E_INVALIDARG | 0x80070057 | Un nom de serveur proxy incorrect a été spécifié dans les paramètres de proxy Internet Explorer de l’utilisateur. Cette erreur est également observée lorsque les informations d’identification sont fournies pour les schémas d’authentification qui ne sont pas NTLM/Negotiate, mais que le nom d’utilisateur ou le mot de passe est null. Modifiez les paramètres de proxy Internet Explorer de l’utilisateur pour qu’il s’agit d’un serveur proxy valide. Ou modifiez les informations d’identification pour ne pas être null nom d’utilisateur/mot de passe pour les schémas autres que NTLM/Negotiate. |
ERROR_WINHTTP_NAME_NOT_RESOLVED | 0x80072ee7 | Le serveur/proxy n’a pas pu être résolu par BITS. Internet Explorer sur le même ordinateur dans le contexte du propriétaire du travail rencontrerait le même problème. Essayez de télécharger le même fichier via le navigateur web à l’aide du contexte du propriétaire du travail. |
ERROR_HTTP_INVALID_SERVER_RESPONSE | 0x80072f78 | Il s’agit d’une erreur temporaire et le travail continue de télécharger. |
BG_E_INSUFFICIENT_RANGE_SUPPORT | 0x80200013 | BITS utilise des en-têtes de plage dans les requêtes HTTP pour demander des parties d’un fichier. Si le serveur ou le serveur proxy ne comprend pas les demandes de plage et retourne le fichier complet au lieu de la plage demandée, BITS place le travail dans l’état ERROR avec cette erreur. Capturez le trafic réseau pendant l’erreur et examinez si les requêtes HTTP GET avec l’en-tête Range obtiennent des réponses valides. Vérifiez les serveurs proxy pour vous assurer qu’ils sont configurés correctement pour prendre en charge les demandes de plage. |
BG_E_MISSING_FILE_SIZE | 0x80200011 | Lorsque BITS envoie une requête HEAD et que le serveur/proxy ne retourne pas d’en-tête Content-Length dans la réponse, BITS place le travail dans l’état ERROR avec cette erreur. Vérifiez le serveur proxy et le serveur WSUS pour vous assurer qu’ils sont correctement configurés. Certaines versions du serveur proxy Apache 2.0 sont connues pour présenter ce comportement. |
BG_E_HTTP_ERROR_403 | 0x80190193 | Lorsque le serveur retourne une réponse HTTP 403 dans l’une des requêtes, BITS place le travail dans l’état ERROR avec ce code d’erreur. HTTP 403 correspond à Interdit : l’accès est refusé. Vérifiez les autorisations d’accès pour le compte exécutant le travail. |
ERROR_NOT_LOGGED_ON | 0x800704dd | Le service SENS ne reçoit pas de notifications d’ouverture de session utilisateur. BITS (version 2.0 et ultérieure) dépend des notifications d’ouverture de session à partir de Service Control Manager, qui dépendent à son tour du service SENS. Vérifiez que le service SENS est démarré et exécuté correctement. |
Réparer une configuration BITS endommagée
Pour réparer la configuration du service BITS endommagée, vous pouvez entrer manuellement la configuration du service BITS.
Note
Cette action ne doit être effectuée que dans les cas où toutes les autres tentatives de résolution des problèmes ont échoué. Vous devez être administrateur pour modifier la configuration BITS.
Pour réparer une configuration BITS endommagée, procédez comme suit :
Ouvrez une invite de commandes.
Entrez les commandes suivantes, appuyez sur Entrée après avoir tapé chaque commande :
sc config bits binpath= "%systemroot%\system32\svchost.exe –k netsvcs" sc config bits depend= RpcSs/EventSystem sc config bits start= delayed-auto sc config bits type= interact type=own sc config bits error= normal sc config bits obj= LocalSystem sc privs bits privileges= SeCreateGlobalPrivilege/SeImpersonatePrivilege/SeTcbPrivilege/SeAssignPrimaryTokenPrivilege/SeIncreateQuotaPrivilege sc sidtype bits unrestricted sc failure bits reset= 86400 actions=restart/60000/restart/120000
Arrêtez et redémarrez BITS.
Problèmes liés au service de l’agent WSUS
Assurez-vous que le service Windows Update peut démarrer correctement.
Pour afficher l’état actuel du service Windows Update, ouvrez une invite de commandes et exécutez la commande suivante :
sc query wuauserv
Si WUAUSERV est en cours d’exécution, vous devez voir la sortie suivante :
SERVICE_NAME: wuauserv
TYPE: 20 WIN32_SHARE_PROCESS
STATE: 4 RUNNING
Si WUAUSERV n’est pas en cours d’exécution, vous voyez la sortie suivante :
SERVICE_NAME: wuauserv
TYPE: 20 WIN32_SHARE_PROCESS
STATE: 1 STOPPED
Vérifiez que vous pouvez démarrer le service WUAUSERV avec succès. Vous devez être connecté en tant qu’administrateur local pour arrêter et redémarrer WUAUSERV.
Pour démarrer le service WUAUSERV, exécutez les commandes suivantes à partir d’une invite de commandes :
sc start wuauserv
Si l’agent client ne parvient pas à démarrer et à s’exécuter correctement, vérifiez la version de l’agent Windows Update. Si l’agent n’est pas à jour, mettez à jour l’agent Windows Update vers la dernière version.
Vous pouvez également réinitialiser les composants Windows Update.
Après avoir exécuté le correctif ou mis à jour l’agent, exécutez wuauclt /detectnow
. Vérifiez windowsupdate.log pour vous assurer qu’il n’y a aucun problème.
Vérifiez que le serveur WSUS est accessible à partir du client
Vérifiez que vous pouvez accéder à l’URL http://<WSUSSERVER:port>/iuident.cab
et télécharger le fichier sans erreur.
Si le serveur WSUS est inaccessible à partir du client, les causes les plus probables sont les suivantes :
- Il existe un problème de résolution de noms sur le client.
- Il existe un problème lié au réseau, tel qu’un problème de configuration de proxy.
Utilisez des procédures de résolution des problèmes standard pour vérifier que la résolution de noms fonctionne sur le réseau. Si la résolution de noms fonctionne, l’étape suivante consiste à rechercher les problèmes de proxy. Vérifiez windowsupdate.log (C :\windows) pour voir s’il existe des erreurs liées au proxy. Vous pouvez exécuter la proxycfg
commande pour vérifier les paramètres du proxy WinHTTP.
S’il existe des erreurs de proxy, accédez aux paramètres LAN des connexions>des outils>Internet Explorer>, configurez le proxy approprié, puis vérifiez que vous pouvez accéder à l’URL WSUS spécifiée.
Une fois terminé, vous pouvez copier ces paramètres de proxy utilisateur dans les paramètres du proxy WinHTTP à l’aide de la proxycfg -u
commande. Une fois les paramètres de proxy spécifiés, exécutez à wuauclt /detectnow
partir d’une invite de commandes et vérifiez windowsupdate.log pour les erreurs.
Reconstruire le magasin de l’agent de mise à jour automatique
En cas de problème lors du téléchargement des mises à jour et qu’il existe des erreurs liées au magasin de distribution de logiciels, effectuez les étapes suivantes sur le client :
- Arrêtez le service Mises à jour automatiques en exécutant
sc stop wuauserv
une invite de commandes. - Renommez le dossier de distribution de logiciels (par exemple, C :\Windows\SoftwareDistribution).
- Redémarrez le service de mise à jour automatique en exécutant
sc start wuauserv
une invite de commandes. - À partir d’une invite de commandes, exécutez
wuauclt /resetauthorization /detectnow
. - À partir d’une invite de commandes, exécutez
wuauclt /reportnow
.
Rechercher les clients avec le même ID SUSclient
Vous pouvez rencontrer un problème où un seul client WSUS apparaît dans la console. Vous pouvez également remarquer qu’un groupe de clients n’apparaît qu’un seul apparaît dans la console à la fois, mais celui exact qui apparaît peut changer au fil du temps. Ce problème peut se produire lorsque les systèmes sont imagené et que les clients finissent par avoir le même SUSclientID
problème.
Pour les clients qui ne fonctionnent pas correctement en raison du même SUSclientID
problème, effectuez les étapes suivantes :
Arrêtez le service Mises à jour automatiques en exécutant
sc stop wuauserv
une invite de commandes.Supprimez la
SUSclientID
clé de Registre de l’emplacement suivant :HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\WindowsUpdate
Redémarrez le service de mise à jour automatique en exécutant
sc start wuauserv
une invite de commandes.À partir d’une invite de commandes, exécutez
wuauclt /resetauthorization /detectnow
.À partir d’une invite de commandes, exécutez
wuauclt /reportnow
.