Windows Update bloqué : réparer sans réinitialiser le PC

Cet article vous a aidé ?

Windows Update n’est pas « juste un bouton ». C’est une petite chaîne d’approvisionnement : métadonnées, téléchargements, vérification des signatures, maintenance du magasin de composants, redémarrages planifiés, et une masse d’états qui vivent sur le disque. Quand un élément se bloque, l’interface affiche souvent un pourcentage figé et un spinner qui peut survivre à la batterie de votre portable.

Si vous regardez « Téléchargement 0% », « Installation 100% » ou le classique « Préparation des mises à jour… N’éteignez pas votre ordinateur » qui « travaille » depuis le déjeuner, vous n’avez pas besoin de réinitialiser la machine. Vous devez identifier quel sous-système est bloqué, nettoyer les bons caches et réparer la pile de maintenance de manière contrôlée. Voici ce mode d’emploi.

Ce que « bloqué » signifie réellement (et pourquoi ce n’est pas toujours Windows Update)

Quand les gens disent que Windows Update est « bloqué », ils veulent généralement dire l’un de ces modes de défaillance :

  • Interface bloquée : l’application Paramètres affiche un pourcentage figé, mais des téléchargements ou installations se poursuivent en arrière-plan.
  • Pipeline de téléchargement bloqué : la machine ne peut pas obtenir les métadonnées ou le contenu (proxy, DNS, inspection TLS, bizarreries de Delivery Optimization, ou cache corrompu).
  • Pile de maintenance bloquée : CBS (Component-Based Servicing) ne peut pas appliquer les packages à cause d’une corruption du magasin de composants, de fichiers source manquants, ou d’une pile de maintenance incompatible.
  • Phase de redémarrage bloquée : des mises à jour sont préparées, puis échouent pendant le redémarrage et font rollback en boucle.
  • Limitation disque/IO : la mise à jour est « bloquée » parce que le stockage est lent, le disque est plein, ou le système thrash sur un disque en fin de vie.
  • Interférence tierce : solutions de sécurité endpoint, drivers de filtre disque, « optimiseurs système » ou outils de nettoyage agressifs bloquent les mises à jour ou suppriment le mauvais état.

La correction dépend de laquelle vous avez. Donc on ne commence pas par supprimer des dossiers au hasard. On commence par mesurer.

Une citation à garder sur un post-it :

« L’espoir n’est pas une stratégie. » — idée paraphrasée souvent utilisée en exploitation et ingénierie de la fiabilité

Et une petite blague, parce que vous l’avez mérité : les pourcentages de progression de Windows Update sont comme les boutons d’ascenseur — appuyer plus fort ne les rend pas plus rapides.

Playbook de diagnostic rapide (premiers/deuxièmes/troisièmes contrôles)

Premier : est-ce réellement en train de travailler ou juste gelé ?

  1. Vérifiez l’activité disque et le CPU dans le Gestionnaire des tâches (vue Détails). Si TiWorker.exe, TrustedInstaller.exe ou svchost.exe (wuauserv) est occupé et que le disque est actif, vous pouvez être dans une phase lente mais en progression.
  2. Vérifiez l’espace disque libre. Si le lecteur système est en dessous d’environ 10–15 Go libres, les mises à jour se bloquent ou échouent souvent en cours de route.
  3. Vérifiez si vous êtes bloqué avant le redémarrage ou dans une boucle de démarrage. Si vous êtes bloqué sur « Préparation des mises à jour » au démarrage, c’est une branche différente que « Téléchargement 0% » dans Paramètres.

Deuxième : identifier la catégorie de goulot d’étranglement

  1. Chemin réseau : DNS/proxy/inspection TLS ? Sur les réseaux d’entreprise, c’est courant. À la maison, c’est généralement le DNS du FAI, un VPN ou un cache corrompu.
  2. État des services Windows Update : les services nécessaires tournent-ils, sont-ils bloqués ou désactivés ?
  3. Intégrité du magasin de composants : si DISM/SFC sont mécontents, arrêtez de blâmer l’UI des mises à jour.
  4. État du stockage : disques lents ou défaillants créent des symptômes « bloqués » qui ne sont pas spécifiques aux mises à jour.

Troisième : appliquer la correction la moins destructive correspondant à la catégorie

  1. Réinitialisations sûres : redémarrer les services, vider SoftwareDistribution et catroot2 (la bonne manière), réessayer.
  2. Réparer la maintenance : DISM RestoreHealth, puis SFC, puis retenter les mises à jour.
  3. Escalade ciblée : analyser les logs, isoler un KB spécifique, utiliser le catalogue de mises à jour/installation manuelle, ou effectuer une réparation sur place (toujours sans réinitialiser).

Faits intéressants et contexte historique (6–10 points rapides)

  • La maintenance Windows est plus ancienne que « Windows Update » : le modèle Component-Based Servicing (CBS) remonte à l’ère Vista et sous-tend encore la maintenance moderne.
  • Le dossier WinSxS n’est pas un « bug de fichiers dupliqués » : c’est un magasin de composants permettant des versions côte à côte, la maintenance et le rollback — au prix de complexité et d’utilisation disque.
  • Delivery Optimization (DO) a changé la donne : Windows peut récupérer les contenus de mise à jour depuis des pairs sur votre LAN (ou Internet selon la politique), ce qui est bien jusqu’à ce qu’une politique ou un cache corrompu rende cela problématique.
  • Les Servicing Stack Updates (SSU) existent parce que le système de mise à jour se met à jour lui-même : quand la pile de maintenance est obsolète, elle peut ne pas être capable d’installer des packages plus récents correctement.
  • Les mises à jour cumulatives ont réduit la dispersion du « patch Tuesday » : moins de patches individuels, mais une cumulative cassée peut bloquer beaucoup de choses à la fois.
  • Windows Update utilise plusieurs caches : pas seulement SoftwareDistribution ; des catalogues cryptographiques et l’état BITS peuvent aussi être impliqués.
  • WindowsUpdate.log était autrefois simple : Windows moderne génère des traces ETL que vous convertissez en log lisible, pratique pour les ingénieurs et agaçant pour les autres.
  • Certaines pannes de mise à jour sont vraiment des pannes de système de fichiers/drivers : les drivers de filtre (AV, chiffrement, DLP) peuvent provoquer des échecs de transaction qui apparaissent comme « mise à jour bloquée ».
  • Le rollback est une fonctionnalité avec une durée : le système conserve les données de désinstallation pour une fenêtre limitée (varie selon version/paramètres), ce qui influe sur la pression disque et les options de récupération.

Tâches pratiques : commandes, sorties attendues et décisions (12+)

Toutes les commandes ci‑dessous supposent que vous exécutez un shell élevé. Si vous êtes sur Windows, lancez « Windows Terminal (Admin) » ou « Invite de commandes (Admin) ». Les étiquettes de prompt dans les blocs sont cosmétiques ; les commandes sont des commandes Windows réelles.

Task 1: Confirm the update-related services aren’t disabled or stuck

cr0x@server:~$ sc query wuauserv
SERVICE_NAME: wuauserv
        TYPE               : 20  WIN32_SHARE_PROCESS
        STATE              : 4  RUNNING
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

Ce que cela signifie : STATE: RUNNING est bon. S’il est STOPPED, ce n’est pas grave si aucune mise à jour n’est en cours ; s’il est désactivé ou refuse de démarrer, c’est un problème.

Décision : Si wuauserv n’est pas en cours lors d’une tentative de mise à jour, démarrez-le (Tâche 2) et vérifiez les dépendances (BITS, cryptsvc).

Task 2: Start core services (Windows Update, BITS, Crypto)

cr0x@server:~$ net start wuauserv
The Windows Update service was started successfully.

cr0x@server:~$ net start bits
The Background Intelligent Transfer Service service was started successfully.

cr0x@server:~$ net start cryptsvc
The Cryptographic Services service was started successfully.

Ce que cela signifie : Si un service échoue, le texte d’erreur est important. « Access is denied » indique une politique ou des permissions cassées ; « dependency service failed » vous oriente vers le maillon suivant.

Décision : Si les services ne démarrent pas, ne supprimez pas encore les caches ; diagnosez la configuration des services, les permissions ou la corruption d’abord.

Task 3: Check free disk space (the boring killer)

cr0x@server:~$ fsutil volume diskfree c:
Total # of free bytes        :  4294967296
Total # of bytes             : 255852544000
Total # of avail free bytes  :  4294967296

Ce que cela signifie : Ici vous avez ~4 Go de libre. Ce n’est pas « juste serré », c’est « roulette de mise à jour ». Les mises à jour de fonctionnalité et cumulatives peuvent exiger plusieurs Go pour la préparation, le rollback et l’extraction temporaire.

Décision : Si vous êtes sous ~10–15 Go libres, arrêtez-vous et libérez de l’espace avant de faire autre chose. Vider les caches sans espace crée de nouveaux modes d’échec.

Task 4: Quick health check of the system drive

cr0x@server:~$ chkdsk c: /scan
The type of the file system is NTFS.
Volume label is OS.

Stage 1: Examining basic file system structure ...
  512000 file records processed.
File verification completed.
Windows has scanned the file system and found no problems.
No further action is required.

Ce que cela signifie : S’il rapporte des problèmes, réparez le système de fichiers avant d’accuser les composants de mise à jour. Des métadonnées corrompues peuvent casser la préparation de packages et le rollback.

Décision : Si des erreurs sont trouvées, planifiez une réparation hors ligne : chkdsk c: /f (peut nécessiter un redémarrage).

Task 5: Check the Windows Update client for obvious error states

cr0x@server:~$ usoclient StartScan

Ce que cela signifie : Cela déclenche un scan. Il n’affichera pas grand‑chose. Le but est de provoquer de l’activité de log que vous pouvez inspecter.

Décision : Si l’interface est bloquée mais qu’un scan génère de nouvelles entrées de log, vous êtes en territoire « UI bloquée » ; passez aux tâches d’inspection des logs.

Task 6: Get a readable Windows Update log (modern Windows)

cr0x@server:~$ powershell -NoProfile -Command "Get-WindowsUpdateLog -LogPath $env:TEMP\WindowsUpdate.log"
WindowsUpdate.log written to C:\Users\Administrator\AppData\Local\Temp\WindowsUpdate.log

Ce que cela signifie : Vous avez maintenant un log fusionné que vous pouvez ouvrir avec le Bloc‑notes. Cherchez des erreurs répétées, des codes HTTP, des problèmes de proxy, ou « FATAL ».

Décision : Si vous voyez HTTP 401/407/0x8024402c, traitez-le comme un problème réseau/proxy/DNS. Si vous voyez des échecs CBS/package, passez à DISM/SFC.

Task 7: Check BITS queue (download pipeline)

cr0x@server:~$ bitsadmin /list /allusers
BITSADMIN version 3.0
BITS administration utility.
(c) Copyright 2000-2003 Microsoft Corp.

{E3C8D2B4-0D3E-4D3D-9C5C-2AABF5C1A7E1} 'WU Client Download' SUSPENDED 0 / 1 0 / 52428800

Ce que cela signifie : Un job suspendu peut être normal si le réseau est contraint ou si le job est mis en pause par une politique. Cela peut aussi indiquer une file bloquée.

Décision : Si les jobs restent suspendus indéfiniment, redémarrez BITS et supprimez soigneusement les jobs problématiques. Dans la plupart des cas, réinitialiser les composants de mise à jour (Tâches 10/11) est plus propre que d’éditer manuellement les jobs BITS.

Task 8: Check WinHTTP proxy configuration (corporate culprit)

cr0x@server:~$ netsh winhttp show proxy
Current WinHTTP proxy settings:

    Proxy Server(s) :  proxy.corp.local:8080
    Bypass List     :  (none)

Ce que cela signifie : Le proxy WinHTTP est utilisé par les services système (y compris les composants de mise à jour) même si le proxy du navigateur utilisateur est différent.

Décision : Si vous êtes hors réseau ou que le proxy est incorrect, réinitialisez : netsh winhttp reset proxy. Si vous êtes sur le réseau d’entreprise, assurez‑vous que cela correspond à la politique interne.

Task 9: Confirm system time isn’t lying (TLS and signature verification)

cr0x@server:~$ w32tm /query /status
Leap Indicator: 0(no warning)
Stratum: 3 (secondary reference - syncd by (S)NTP)
Precision: -23 (119.209ns per tick)
Last Successful Sync Time: 2/5/2026 9:12:32 AM
Source: time.windows.com

Ce que cela signifie : Si l’heure est fortement erronée, la validation des certificats échoue et les téléchargements/vérifications de signature peuvent se casser de manière non évidente.

Décision : Si la synchronisation est ancienne ou que la source est « Local CMOS Clock », corrigez la synchronisation horaire avant de chasser des fantômes de mise à jour.

Task 10: Stop services before cache surgery

cr0x@server:~$ net stop wuauserv
The Windows Update service was stopped successfully.

cr0x@server:~$ net stop bits
The Background Intelligent Transfer Service service was stopped successfully.

cr0x@server:~$ net stop cryptsvc
The Cryptographic Services service was stopped successfully.

Ce que cela signifie : Vous ne pouvez pas modifier en toute sécurité le cache de mise à jour pendant que les services y écrivent.

Décision : Si un service refuse de s’arrêter, vérifiez s’il y a un redémarrage en attente ou un service bloqué ; redémarrez une fois (pas cinq fois) et réessayez.

Task 11: Reset the update caches (the classic, done correctly)

cr0x@server:~$ ren C:\Windows\SoftwareDistribution SoftwareDistribution.old
cr0x@server:~$ ren C:\Windows\System32\catroot2 catroot2.old

Ce que cela signifie : Renommer est plus sûr que supprimer. Si cela résout le problème, vous pourrez plus tard supprimer les dossiers .old pour récupérer de l’espace.

Décision : Si le renommage échoue avec « in use », vous n’avez pas arrêté les bons services — ou quelque chose (antivirus, driver de filtre) maintient des handles. Enquêter avant de forcer.

Task 12: Start services and try the scan again

cr0x@server:~$ net start cryptsvc
The Cryptographic Services service was started successfully.

cr0x@server:~$ net start bits
The Background Intelligent Transfer Service service was started successfully.

cr0x@server:~$ net start wuauserv
The Windows Update service was started successfully.

cr0x@server:~$ usoclient StartScan

Ce que cela signifie : Cela force la reconstruction des caches et des métadonnées.

Décision : Si les mises à jour dépassent maintenant 0%/états bloqués, vous étiez dans un terrain de corruption de cache. Sinon, passez aux vérifications de santé de la maintenance.

Task 13: Check component store health (DISM)

cr0x@server:~$ DISM /Online /Cleanup-Image /CheckHealth
Deployment Image Servicing and Management tool
Version: 10.0.22621.1

Image Version: 10.0.22631.3007

No component store corruption detected.
The operation completed successfully.

Ce que cela signifie : S’il indique qu’une corruption est détectée, vous avez besoin de /RestoreHealth.

Décision : Si une corruption existe, réparez-la avant de retenter les mises à jour. Windows Update dépend d’un CBS sain.

Task 14: Repair component store (DISM RestoreHealth)

cr0x@server:~$ DISM /Online /Cleanup-Image /RestoreHealth
Deployment Image Servicing and Management tool
Version: 10.0.22621.1

Image Version: 10.0.22631.3007

[==========================100.0%==========================]
The restore operation completed successfully.
The operation completed successfully.

Ce que cela signifie : DISM a réparé le magasin de composants en utilisant Windows Update ou des sources locales.

Décision : Si DISM échoue avec des erreurs de source (les plus courantes incluent 0x800f081f), vous pourriez avoir besoin d’un ISO monté comme source. Ne réinitialisez pas ; fournissez à DISM les bons fichiers.

Task 15: Repair system files (SFC)

cr0x@server:~$ sfc /scannow
Beginning system scan. This process will take some time.

Beginning verification phase of system scan.
Verification 100% complete.

Windows Resource Protection found corrupt files and successfully repaired them.

Ce que cela signifie : SFC a réparé les fichiers système. S’il ne peut pas réparer certains fichiers, vous devrez inspecter C:\Windows\Logs\CBS\CBS.log et possiblement relancer DISM.

Décision : Si SFC répare des éléments, redémarrez et retentez les mises à jour. Si SFC ne peut pas réparer, considérez un problème de maintenance plus profond.

Task 16: Check for pending reboot state (the silent blocker)

cr0x@server:~$ reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\RebootPending"
ERROR: The system was unable to find the specified registry key or value.

Ce que cela signifie : Clé introuvable signifie généralement pas de drapeau de redémarrage CBS en attente. S’il existe, vous devrez probablement redémarrer pour finaliser une installation/désinstallation précédente.

Décision : Si un redémarrage est requis, redémarrez une fois, puis retentez les mises à jour. Ne faites pas 12 redémarrages en pensant résoudre le problème.

Task 17: Inspect update history quickly (PowerShell)

cr0x@server:~$ powershell -NoProfile -Command "Get-HotFix | Sort-Object InstalledOn -Descending | Select-Object -First 5"
Source        Description      HotFixID  InstalledBy          InstalledOn
------        -----------      -------  -----------          -----------
COMPUTERNAME  Update           KB5034123 NT AUTHORITY\SYSTEM 1/30/2026
COMPUTERNAME  Security Update  KB5033375 NT AUTHORITY\SYSTEM 1/15/2026
COMPUTERNAME  Update           KB5032007 NT AUTHORITY\SYSTEM 12/20/2025
COMPUTERNAME  Update           KB5029920 NT AUTHORITY\SYSTEM 11/18/2025
COMPUTERNAME  Update           KB5028851 NT AUTHORITY\SYSTEM 10/22/2025

Ce que cela signifie : Vous pouvez voir si quelque chose s’est installé récemment. Si rien ne s’installe depuis des mois, vous avez peut‑être des blocages de politique ou une pile de maintenance cassée.

Décision : Si la dernière mise à jour est ancienne, priorisez les vérifications de politique/proxy/WSUS (Tâche 18) et l’intégrité de la maintenance.

Task 18: Check if WSUS/policy is forcing a dead-end server

cr0x@server:~$ reg query "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v WUServer
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate
    WUServer    REG_SZ    http://wsus.corp.local:8530

Ce que cela signifie : Cette machine est configurée pour utiliser WSUS. Si vous n’êtes pas sur ce réseau, vous essayez d’acheter des courses dans un magasin qui n’existe pas.

Décision : Dans les environnements gérés, n’écrasez pas la politique à la légère. Sur des machines non gérées, la suppression de la politique WSUS peut rétablir les mises à jour directes, mais faites‑le en connaissance de cause (et après avoir sauvegardé l’état de la politique si possible).

Deuxième petite blague, puis on retourne au travail : Supprimer C:\Windows « résoudrait » aussi Windows Update, de la même façon qu’enlever un moteur résout une fuite d’huile.

Listes de vérification / plan étape par étape (sûr, puis chirurgical)

Phase 0 : Ne pas empirer la situation (5 minutes)

  1. Branchez le courant (ordinateurs portables). Les échecs de mise à jour dus à une coupure de batterie sont auto‑infligés.
  2. Déconnectez les stockages USB inutiles (surtout les disques externes instables).
  3. Suspendez les charges IO lourdes : jeux en cours de téléchargement, synchronisation cloud, activité de disques de VM. Les mises à jour se disputent le disque.
  4. Prenez un instantané rapide de la réalité : notez l’état bloqué (0%, 100%, boucle de redémarrage) et tout code d’erreur.

Phase 1 : Vérifications rapides (15–30 minutes)

  1. Libérez de l’espace disque à au moins 15–20 Go sur C: si possible (désinstallez les grosses applications, nettoyez Downloads, videz les temporaires). N’utilisez pas des « nettoyeurs de registre » douteux.
  2. Redémarrez une fois. Un redémarrage propre règle beaucoup de transactions en attente et de deadlocks de services.
  3. Vérifiez les services (Tâches 1/2). Assurez‑vous que BITS, cryptsvc, wuauserv tournent.
  4. Vérifiez proxy/heure (Tâches 8/9). Si l’heure/le proxy est incorrect, tout le reste n’est que théâtre.

Phase 2 : Réinitialiser les composants de mise à jour en toute sécurité (20 minutes)

  1. Arrêtez les services (Tâche 10).
  2. Renommez les caches (Tâche 11) : SoftwareDistribution et catroot2.
  3. Démarrez les services (Tâche 12) et déclenchez un scan.
  4. Surveillez le comportement : si les téléchargements progressent, vous êtes probablement fixé. Laissez‑faire ; n’interrompez pas pour le plaisir.

Phase 3 : Réparer la santé de la maintenance (30–90 minutes)

  1. DISM CheckHealth puis RestoreHealth (Tâches 13/14).
  2. SFC /scannow (Tâche 15).
  3. Redémarrage.
  4. Retentez les mises à jour.

Phase 4 : Quand DISM nécessite une source (toujours sans réinitialiser)

Si DISM échoue car il ne trouve pas les fichiers sources, utilisez un ISO Windows correspondant à votre build. Montez‑le (double‑cliquez sur l’ISO), puis pointez DISM vers install.wim ou install.esd.

cr0x@server:~$ DISM /Online /Cleanup-Image /RestoreHealth /Source:WIM:D:\sources\install.wim:1 /LimitAccess
Deployment Image Servicing and Management tool
Version: 10.0.22621.1

Image Version: 10.0.22631.3007

[==========================100.0%==========================]
The restore operation completed successfully.
The operation completed successfully.

Ce que cela signifie : Vous avez réparé en utilisant une source locale au lieu de Windows Update.

Décision : Si cela réussit, relancez SFC et retentez les mises à jour. Si cela échoue, vous pouvez avoir un décalage d’image OS ou des problèmes de fiabilité disque plus profonds.

Phase 5 : Réparation sur place (l’option nucléaire qui n’est pas une réinitialisation)

Si vous avez réparé le magasin de composants, réinitialisé les caches, validé la santé du disque et que les mises à jour échouent toujours, une réparation sur place peut remplacer les fichiers système Windows tout en conservant applications et données. C’est en gros « refaire la plomberie OS » sans raser la maison.

Règle : Ne faites cela qu’après avoir collecté les logs et confirmé que le stockage est sain. Faire une réparation sur un SSD défaillant transforme un « agacement » en « perte de données ».

Erreurs courantes : symptôme → cause racine → correction

1) « Bloqué à 0% au téléchargement »

Symptôme : Le téléchargement ne démarre jamais ; pas de trafic réseau ; les tentatives ne servent à rien.

Cause probable : Mauvaise configuration du proxy WinHTTP, problèmes DNS, casse d’inspection TLS, ou file BITS bloquée.

Correction : Vérifiez le proxy (Tâche 8), l’heure (Tâche 9), BITS (Tâche 7). Réinitialisez les composants de mise à jour (Tâches 10–12) si les caches sont corrompus.

2) « Bloqué à 100% en installation » (dans Paramètres)

Symptôme : L’UI indique 100% mais rien ne se passe pendant des heures.

Cause probable : La maintenance est en cours (disque lent) ou CBS est bloqué sur une transaction.

Correction : Vérifiez l’activité disque ; assurez‑vous d’avoir suffisamment d’espace libre (Tâche 3). Si cela ne bouge vraiment pas, réparez la maintenance (Tâches 13–15).

3) Boucle de redémarrage infinie après les mises à jour

Symptôme : « Préparation des mises à jour » puis redémarrage ; parfois « Nous n’avons pas pu terminer les mises à jour ».

Cause probable : Un driver spécifique ou un driver de filtre casse pendant la phase hors ligne ; erreurs de système de fichiers ; espace insuffisant pour le rollback ; état de package cassé.

Correction : Démarrez en démarrage avancé, utilisez le mode sans échec si nécessaire, exécutez chkdsk et DISM/SFC. Supprimez les logiciels de sécurité/drivers récents si corrélés. Réinitialisez les caches de mise à jour une fois stable.

4) Erreur 0x800f081f (ou « les fichiers source sont introuvables »)

Symptôme : DISM échoue ; les mises à jour peuvent échouer ; SFC ne peut pas réparer.

Cause probable : Corruption du magasin de composants plus incapacité à récupérer les sources (WSUS mal configuré, machine hors ligne, ou sources d’optionals manquantes).

Correction : Utilisez un ISO correspondant comme source DISM (Phase 4) ou réparez les politiques WSUS/proxy (Tâche 18 + alignement avec la politique d’entreprise).

5) « Service Windows Update manquant/désactivé » après un « debloater »

Symptôme : Les mises à jour ne fonctionnent jamais ; services désactivés ; erreurs d’accès refusé.

Cause probable : Un script a désactivé des services, modifié des permissions ou supprimé des tâches planifiées.

Correction : Réactivez les services, réparez les permissions (souvent le plus simple via une réparation sur place), et évitez d’utiliser des scripts de « tuning » sur des machines de production.

6) Le téléchargement des mises à jour fonctionne mais l’installation échoue à répétition

Symptôme : Tentatives d’installation répétées, même KB échoue.

Cause probable : Problèmes du magasin de composants, conflits de drivers, ou logiciel de sécurité tiers interceptant les opérations sur les fichiers.

Correction : DISM/SFC ; désactivez/désinstallez temporairement l’AV tiers (si la politique le permet), puis retentez. Si un KB unique est en cause, installez‑le manuellement ou bloquez‑le jusqu’à une cumulative subséquente.

Trois mini-histoires d’entreprise issues du terrain

Mini‑histoire 1 : L’incident causé par une mauvaise hypothèse

Ils ont supposé que le problème de mise à jour était « juste Internet ». Les notes du helpdesk indiquaient que les portables étaient à distance, les utilisateurs sur Wi‑Fi domestique, et Windows Update bloqué à 0%. La première réponse fut prévisible : demandez à tout le monde de redémarrer leur routeur, désactiver le VPN et réessayer.

Ça n’a pas marché. Pas pendant une semaine. Le pourcentage bloqué était constant, et les codes d’erreur trop vagues pour être utiles sans regarder les bons logs. Un ingénieur a finalement exécuté netsh winhttp show proxy sur une machine affectée. Surprise : un proxy d’entreprise était défini dans WinHTTP et forcé pour les services système, mais les portables étaient hors‑réseau. Le trafic navigateur fonctionnait parce que le navigateur utilisait un proxy utilisateur ; Windows Update utilisait le proxy système et essayait de joindre un nom interne qui ne résolvait pas sur les réseaux domestiques.

La mauvaise hypothèse était subtile : « Si le web marche, Windows Update a forcément accès réseau. » En entreprise, ce n’est tout simplement pas vrai. Les services système et les navigateurs peuvent emprunter des chemins et politiques réseau différents.

La correction fut simple et ennuyeuse : quand les appareils sont hors réseau, soit assurez‑vous que le proxy est accessible (via VPN) soit réinitialisez WinHTTP vers l’accès direct. Après cela, des réinitialisations de SoftwareDistribution ont été nécessaires sur plusieurs machines parce que les tentatives échouées avaient laissé des états périmés.

La leçon durable ne concernait pas seulement les proxies. C’était le respect de la séparation entre le réseau utilisateur et le réseau système. Windows Update vit dans le monde système.

Mini‑histoire 2 : L’optimisation qui a échoué

Une équipe d’ingénierie desktop a tenté de « accélérer le déploiement » en s’appuyant fortement sur le peer‑to‑peer Delivery Optimization entre étages de bureau. Sur le papier, c’était excellent : moins de téléchargements répétés depuis Internet, distribution plus rapide et réduction de l’usage WAN.

En pratique, les bureaux avaient un mix de switchs et VLANs où le multicast n’était pas pertinent mais la découverte de pairs était… incohérente. Certains sous‑réseaux avaient une isolation client agressive, d’autres avaient des pare‑feu endpoint avec des règles dépareillées, et certains portables dormaient plus qu’ils n’étaient réveillés.

Résultat : un groupe de machines tentait de récupérer des payloads de peers techniquement « disponibles » dans le graphe DO mais effectivement inaccessibles ou trop lents. Les téléchargements démarraient, calaient et restaient en état suspendu. Le helpdesk voyait « bloqué à 2% » et accusait Microsoft. Le réseau accusait les postes. Les postes accusaient le réseau. Vous connaissez la danse.

Quand ils ont temporairement désactivé le cache pair pour les segments problématiques — forçant les clients à récupérer depuis la source officielle — le problème a disparu. Puis ils ont réintroduit DO avec un scope plus strict et des politiques plus sensées, après avoir réellement cartographié la réalité réseau au lieu de faire confiance à un défaut.

L’optimisation est excellente. L’optimisation prématurée d’un système distribué non instrumenté est la recette d’une file de tickets qui ne dort jamais.

Mini‑histoire 3 : La pratique ennuyeuse mais correcte qui a sauvé la journée

Un département financier faisait tourner des applications métier sur des machines Windows patchées selon un calendrier strict. Rien de glamour : fenêtres de maintenance mensuelles, anneaux par étapes (groupe pilote d’abord), et un inventaire propre de l’espace disque et des métriques de santé.

Un mois, une mise à jour cumulative a commencé à échouer sur un sous‑ensemble de machines avec des erreurs d’installation et de longues durées « d’installation ». Parce qu’ils disposaient de télémétries de base, ils ont immédiatement remarqué que les machines affectées partageaient un trait ennuyeux : leurs disques système avaient moins de 8 Go libres. Ce n’était pas un mystère ; c’était des maths.

Ils n’ont pas couru après des tweaks de registre. Ils n’ont pas lancé d’exécutables « fix Windows Update » au hasard. Ils ont libéré de l’espace via des nettoyages standards, supprimé un paquet d’installation mis en cache par un ancien outil de déploiement, et étendu quelques partitions quand le hardware le permettait.

Après cela, la même mise à jour s’est installée proprement. Pas de réparation sur place. Pas de reimage. Pas de week‑end perdu en conjectures.

La « pratique » n’était pas une commande magique ; c’était maintenir une hygiène ennuyeuse : budget d’espace, déploiement par étapes, et la discipline de mesurer avant d’agir. En production, l’ennui est une fonctionnalité.

FAQ

1) Est‑il sûr de supprimer ou renommer le dossier SoftwareDistribution ?

Oui, à condition d’arrêter d’abord les services de mise à jour. Renommer en SoftwareDistribution.old est plus sûr que supprimer car vous pouvez revenir en arrière si vous devez inspecter l’ancien état.

2) Qu’en est‑il de catroot2 — pourquoi cela compte‑t‑il ?

catroot2 stocke les catalogues cryptographiques utilisés pour la vérification des signatures. S’il est corrompu, les installations peuvent échouer de manières qui ressemblent à « téléchargement bloqué » ou « installation bloquée ». Renommez‑le après avoir arrêté cryptsvc.

3) DISM RestoreHealth est bloqué à 62% (ou un autre pourcentage). Est‑ce gelé ?

Souvent il travaille. La progression de DISM n’est pas linéaire et peut marquer une pause en traitant de gros manifests. Si l’activité disque continue et que le processus consomme du CPU, laissez‑le tourner. S’il reste des heures sans IO ni CPU, alors enquêtez (santé disque, journaux d’événements, disponibilité des sources).

4) SFC indique avoir trouvé des fichiers corrompus mais n’a pas pu tout réparer. Et maintenant ?

Exécutez d’abord DISM /RestoreHealth, puis relancez SFC. S’il ne peut toujours pas réparer, inspectez C:\Windows\Logs\CBS\CBS.log pour les fichiers spécifiques et envisagez une réparation sur place.

5) Pourquoi Windows Update indique 100% mais ne se termine jamais ?

Parce que « téléchargé » et « installé » ne sont pas la même chose que « engagé ». Les mises à jour préparent les payloads, puis appliquent les changements via CBS et parfois lors du redémarrage. Les disques lents, le manque d’espace ou des problèmes du magasin de composants peuvent rendre la phase de commit finale très longue ou la faire échouer.

6) Dois‑je utiliser des outils tiers de « réparation Windows Update » ?

Généralement non. Beaucoup ne sont que des wrappers autour des mêmes réinitialisations que vous pouvez faire vous‑même, plus des nettoyages supplémentaires qui peuvent casser la maintenance ou les politiques. En entreprise, ils peuvent aussi violer la configuration de base.

7) Je suis sur un PC d’entreprise. Puis‑je réinitialiser les paramètres WSUS pour corriger cela ?

Pas sans coordination. Si la politique pointe vers WSUS, c’est pour une raison (conformité, tests, bande passante). La bonne démarche est de confirmer que vous pouvez atteindre WSUS (VPN) ou de demander à l’IT d’ajuster la politique pour les scénarios à distance.

8) Un SSD défaillant peut‑il ressembler à « Windows Update bloqué » ?

Oui. Les mises à jour impliquent beaucoup de lectures/écritures et des vérifications d’intégrité. Un disque avec des secteurs réalloués, des timeouts IO ou des erreurs système de fichiers peut faire suspendre ou rollback les installations. Éliminez toujours la santé disque quand les symptômes sont étranges et lents.

9) Puis‑je réparer cela sans perdre mes fichiers ?

Dans presque tous les cas, oui. L’option « gros marteau » est la réparation sur place, qui préserve applications et données. Une réinitialisation complète n’est nécessaire que quand l’OS est au‑delà d’une réparation économiquement raisonnable ou que le stockage est peu fiable.

10) Pourquoi les mises à jour échouent parfois après des scripts de « debloat » ?

Parce que beaucoup de scripts désactivent des services, suppriment des tâches planifiées, ou enlèvent des composants attendus par la pile de maintenance. Windows Update est étroitement couplé aux composants OS ; traiter Windows comme une caisse à pièces amovibles vous amène à devoir le reconstruire plus tard.

Étapes suivantes (pour garder le système stable)

  1. Après une mise à jour réussie, supprimez les dossiers de cache renommés si l’espace disque est critique :
    • C:\Windows\SoftwareDistribution.old
    • C:\Windows\System32\catroot2.old

    Ne faites cela que lorsque vous êtes certain que les mises à jour sont stables.

  2. Définissez un plancher d’espace disque : si C: descend régulièrement sous 15 Go libres, vous revivrez cette histoire.
  3. Ne « optimisez » pas les services de mise à jour en les désactivant. Si vous avez besoin de contrôle, utilisez des politiques et fenêtres de maintenance appropriées.
  4. Sur les machines d’entreprise, vérifiez la posture VPN/proxy avant les jours de patch. Le chemin réseau de Windows Update n’est pas le même que celui de votre navigateur.
  5. Si vous avez eu une corruption du magasin de composants, planifiez le temps d’investigation des causes (problèmes de disque, coupures de courant abruptes, outils de nettoyage agressifs, drivers de filtre). Corrigez les causes, pas seulement les symptômes.

Si vous ne faites rien d’autre : libérez de l’espace, réinitialisez les caches de mise à jour de la bonne façon, exécutez DISM RestoreHealth, puis SFC. Cette séquence corrige un pourcentage surprenant de systèmes « bloqués » — sans réinstallation totale.

← Précédent
« Windows ne peut pas être installé sur ce disque » : les vraies raisons (pas le message)
Suivant →
Docker : pourquoi votre conteneur redémarre en boucle (et le seul journal dont vous avez besoin)

Laisser un commentaire