KB5048667 Windows 11 24H2 : corriger la boucle « Redémarrer pour terminer l’installation »

Après installation de la mise à jour cumulative KB5048667 pour Windows 11 24H2, certains PC affichent en boucle « Redémarrer pour terminer l’installation ». Ce guide rassemble les symptômes, les causes probables et une procédure détaillée (avec scripts) pour sortir proprement de la boucle.

Sommaire

Vue d’ensemble

Des utilisateurs rapportent qu’après l’installation (ou la tentative) de KB5048667, Windows Update persiste à demander un redémarrage. Le système affiche l’état Pending Restart et, dans certains cas, la réinstallation manuelle échoue ou indique paradoxalement que la mise à jour est déjà installée.

<h3>Symptômes observés</h3>
<ul>
  <li>Message continu&nbsp;: «&nbsp;Redémarrer pour terminer l’installation&nbsp;» alors que les redémarrages ne changent rien.</li>
  <li>Statut de la mise à jour&nbsp;: <em>En attente de redémarrage</em> / <em>Pending Restart</em> dans Windows&nbsp;Update.</li>
  <li>Installation manuelle du <code>.msu</code> qui échoue avec <code>0x800764c7</code> (installation annulée) ou <code>0x80242008</code> (échec de téléchargement/validation), ou qui déclare «&nbsp;déjà installé&nbsp;».</li>
  <li>Problème rencontré sur des machines Intel et AMD, parfois sur plusieurs PC du même utilisateur.</li>
</ul>

<h3>Tableau des tentatives courantes</h3>
<table>
  <thead>
    <tr>
      <th>Solution proposée</th>
      <th>Résultat observé</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><strong>Installation manuelle via Microsoft Update Catalog</strong></td>
      <td>Fonctionne pour certains&nbsp;: la boucle s’arrête après une installation manuelle réussie.</td>
    </tr>
    <tr>
      <td><strong>Réinstallation manuelle indiquant «&nbsp;déjà installé&nbsp;»</strong></td>
      <td>Boucle inchangée&nbsp;: base Windows&nbsp;Update potentiellement corrompue / état incohérent.</td>
    </tr>
    <tr>
      <td><strong>Désinstallation depuis l’historique</strong></td>
      <td>Souvent impossible car la mise à jour n’apparaît pas comme <em>installée</em>.</td>
    </tr>
  </tbody>
</table>

Pourquoi cette boucle apparaît

La boucle est généralement liée à un état incohérent des composants Windows Update : fichiers téléchargés partiellement, métadonnées SSP/LCU en conflit, cache ou catalogues (SoftwareDistribution, catroot2) corrompus, opérations de maintenance en attente non finalisées, voire interférence d’un antivirus ou d’un chiffrement.

Les codes d’erreur observés (0x800764c7, 0x80242008) pointent typiquement vers :

  • Une installation interrompue ou annulée.
  • Un package partiellement téléchargé ou mal validé.
  • Une base de données Windows Update altérée.

Procédure recommandée pas à pas

Suivez les étapes suivantes dans l’ordre. Elles couvrent le contrôle de l’état réel de KB5048667, la remise à zéro de Windows Update, la réparation système, puis des options d’installation offline et des solutions de contournement.

<h3>Vérifier si KB5048667 est réellement installée</h3>
<ol>
  <li>Ouvrez <strong>Paramètres&nbsp;› Windows&nbsp;Update&nbsp;› Historique des mises à jour</strong>. Si <strong>KB5048667</strong> est listée, choisissez <em>Désinstaller</em>, puis redémarrez.</li>
  <li>En PowerShell (Admin), vérifiez via <code>Get-HotFix</code>&nbsp;:
    <pre><code class="language-powershell">Get-HotFix -Id KB5048667</code></pre>
    <em>Si une ligne s’affiche, la mise à jour est présente. Si rien ne remonte, elle n’est pas enregistrée comme installée.</em>
  </li>
</ol>

<h3>Réinitialiser proprement les composants Windows&nbsp;Update</h3>
<p>Deux variantes sont proposées. Utilisez <strong>l’une</strong> ou <strong>l’autre</strong> selon votre préférence.</p>

<details>
  <summary><strong>Variante PowerShell (recommandée)</strong></summary>
  <pre><code class="language-powershell"># PowerShell (Admin)

Stop-Service -Name wuauserv,bits,cryptsvc,msiserver -Force -ErrorAction SilentlyContinue # Renommer les caches (ignorer si déjà renommés) $sd = Join-Path $env:SystemRoot ‘SoftwareDistribution’ $cr2 = Join-Path $env:SystemRoot ‘System32\catroot2’ if (Test-Path $sd) { Rename-Item -Path $sd -NewName ‘SoftwareDistribution.old’ -ErrorAction SilentlyContinue } if (Test-Path $cr2) { Rename-Item -Path $cr2 -NewName ‘catroot2.old’ -ErrorAction SilentlyContinue } # Redémarrer les services Start-Service -Name msiserver,bits,cryptsvc,wuauserv # Relancer la détection usoclient StartScan 2>&1 | Out-Null

<details>
  <summary><strong>Variante Invite de commandes (CMD)</strong></summary>
  <pre><code class="language-batch">REM CMD (Admin)

net stop wuauserv net stop cryptSvc net stop bits net stop msiserver ren %SystemRoot%\SoftwareDistribution SoftwareDistribution.old ren %SystemRoot%\System32\catroot2 catroot2.old net start msiserver net start bits net start cryptSvc net start wuauserv

<p>Revenez ensuite dans <strong>Paramètres&nbsp;› Windows&nbsp;Update</strong> et lancez une nouvelle recherche.</p>

<h3>Réparer l’image système</h3>
<p>Ces commandes réparent le magasin de composants et les fichiers système. Exécutez-les en console Admin&nbsp;:</p>
<pre><code class="language-batch">DISM /Online /Cleanup-Image /RestoreHealth

sfc /scannow

Redémarrez puis testez à nouveau Windows Update.

<h3>Installer le package MSU hors ligne en mode sans échec</h3>
<ol>
  <li>Téléchargez le package <code>.msu</code> correspondant à votre édition (x64/ARM64) depuis le Microsoft Update Catalog.</li>
  <li>Redémarrez en <strong>mode sans échec avec prise en charge réseau</strong> (touche <kbd>Maj</kbd> + clic sur <em>Redémarrer</em> &rarr; <em>Dépannage</em> &rarr; <em>Options avancées</em> &rarr; <em>Paramètres</em> &rarr; <em>Redémarrer</em> &rarr; <em>Activer le mode sans échec avec prise en charge réseau</em>).</li>
  <li>Exécutez le <code>.msu</code>, laissez l’installation se terminer, puis redémarrez normalement.</li>
</ol>
<p>Alternative en ligne de commande&nbsp;:</p>
<pre><code class="language-batch">DISM /Online /Add-Package /PackagePath:"D:\Maj\windows11.0-kb5048667-x64.msu"</code></pre>

<h3>Masquer temporairement la mise à jour</h3>
<p>Si la boucle persiste, utilisez l’utilitaire <em>wushowhide.diagcab</em> pour <strong>masquer KB5048667</strong> et empêcher sa réapparition jusqu’à un correctif ultérieur. Après masquage, forcez une nouvelle analyse.</p>

<h3>Mise à niveau sur place</h3>
<p>Solution ultime, mais sûre pour vos données&nbsp;: lancez une <strong>mise à niveau sur place</strong> avec l’ISO officiel de Windows&nbsp;11&nbsp;24H2 (<em>setup.exe</em> &rarr; <em>Conserver fichiers et applications</em>). Cette opération réécrit les composants Windows&nbsp;Update sans perte de données ni de logiciels.</p>

Vérifications supplémentaires utiles

<h3>Services requis et état attendu</h3>
<table>
  <thead>
    <tr>
      <th>Service</th>
      <th>Nom</th>
      <th>Type de démarrage</th>
      <th>État attendu</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Windows&nbsp;Update</td>
      <td>wuauserv</td>
      <td>Manuel (démarrage déclenché)</td>
      <td>En cours d’exécution lors des analyses/installs</td>
    </tr>
    <tr>
      <td>Services de transfert intelligent en arrière-plan</td>
      <td>BITS</td>
      <td>Automatique (différé)</td>
      <td>En cours</td>
    </tr>
    <tr>
      <td>Chiffrement</td>
      <td>cryptsvc</td>
      <td>Automatique</td>
      <td>En cours</td>
    </tr>
    <tr>
      <td>Programme d’installation Windows</td>
      <td>msiserver</td>
      <td>Manuel</td>
      <td>Démarre à la demande</td>
    </tr>
    <tr>
      <td>Orchestrateur de mise à jour</td>
      <td>UsoSvc</td>
      <td>Manuel (déclenché)</td>
      <td>Variable selon l’activité</td>
    </tr>
  </tbody>
</table>

<h3>Antivirus, chiffrement et espace disque</h3>
<ul>
  <li>Désactivez temporairement les protections «&nbsp;anti-altération&nbsp;» ou les modules d’analyse en temps réel d’antivirus tiers pendant l’installation.</li>
  <li>Si un chiffrement de disque tiers est actif, prévoyez de le suspendre pendant la phase d’installation.</li>
  <li>Libérez 10–20&nbsp;Go si le disque système est très rempli.</li>
</ul>

<h3>Nettoyage des caches renommés</h3>
<p>Après résolution, supprimez <code>SoftwareDistribution.old</code> et <code>catroot2.old</code> pour récupérer de l’espace.</p>

Diagnostics et journaux

  • Journal Windows Update : générez-le via PowerShell (Admin) : Get-WindowsUpdateLog -LogPath "$env:USERPROFILE\Desktop\WindowsUpdate.log"
  • Journaux DISM : %SystemRoot%\Logs\DISM\dism.log
  • Journal CBS : %SystemRoot%\Logs\CBS\CBS.log
  • Visionneuse d’événements : Applications and Services Logs > Microsoft > Windows > WindowsUpdateClient > Operational.

Recherchez des mentions de Download, Install, RebootRequired, RevertPending ou des codes d’échec récurrents. Une séquence répétée download → install → reboot required indique un état de transaction non finalisé.

Contournements et actions avancées

<h3>Réversion des opérations en attente</h3>
<p>Depuis l’Environnement de récupération (WinRE), exécutez&nbsp;:</p>
<pre><code class="language-batch">dism /image:C:\ /cleanup-image /revertpendingactions</code></pre>
<p>Cette commande annule des opérations de maintenance en suspens qui peuvent empêcher la finalisation de KB5048667. À utiliser avec discernement.</p>

<h3>Vérification des clés de stratégie et WSUS</h3>
<p>Si vos PC sont reliés à un serveur WSUS, vérifiez que la stratégie «&nbsp;Ne pas se connecter aux emplacements Windows Update sur Internet&nbsp;» n’empêche pas la récupération de dépendances. Contrôlez également les valeurs des clés Windows&nbsp;Update sous <code>HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\</code> et <code>...\AU</code>.</p>

<h3>Réinstallation ciblée via DISM</h3>
<p>Pour forcer l’ajout du package depuis un chemin local fiable&nbsp;:</p>
<pre><code class="language-batch">DISM /Online /Add-Package /PackagePath:"C:\Packages\KB5048667\windows11.0-kb5048667-x64.msu" /NoRestart</code></pre>
<p>Ensuite, redémarrez manuellement et observez l’historique Windows&nbsp;Update.</p>

Checklist express

  • Vérifier si KB5048667 est listée et désinstaller si possible.
  • Réinitialiser SoftwareDistribution et catroot2, redémarrer les services.
  • Exécuter DISM puis sfc.
  • Tenter l’installation offline en mode sans échec (.msu ou DISM /Add-Package).
  • Masquer temporairement la mise à jour si la boucle continue.
  • En dernier recours, mise à niveau sur place.

Questions fréquentes

<h3>La mise à jour est-elle vraiment installée si le <code>.msu</code> dit «&nbsp;déjà installé&nbsp;»&nbsp;?</h3>
<p>Pas forcément. Le message peut signifier que des composants sont partiellement présents. Fiez-vous à <code>Get-HotFix -Id KB5048667</code> et à l’historique Windows&nbsp;Update.</p>

<h3>Dois-je supprimer manuellement des fichiers dans <code>WinSxS</code>&nbsp;?</h3>
<p>Évitez. Préférez <code>DISM /RestoreHealth</code> et la réinitialisation des caches. La manipulation directe de <code>WinSxS</code> est risquée.</p>

<h3>Le problème peut-il revenir après résolution&nbsp;?</h3>
<p>Oui, si la cause racine (antivirus surprotecteur, disque saturé, stratégie d’entreprise) n’est pas adressée. Conservez 10–20&nbsp;Go libres et mettez à jour vos outils de sécurité.</p>

<h3>Que faire si plusieurs PC du foyer ou de l’entreprise sont touchés&nbsp;?</h3>
<p>Testez sur un poste «&nbsp;pilote&nbsp;» la procédure complète. Si confirmée, déployez un script standardisé (voir ci-dessous) et, le cas échéant, suspendez temporairement la distribution de KB5048667 via votre outil de gestion (WSUS/Intune) en attendant un correctif.</p>

Scripts prêts à l’emploi

<h3>Script PowerShell tout-en-un (administrateur)</h3>
<pre><code class="language-powershell"># Réparer la boucle de redémarrage KB5048667 - Windows 11 24H2

# 1) Réinitialise WU 2) Répare DISM/SFC 3) Lance la détection Write-Host « Arrêt des services Windows Update… » -ForegroundColor Cyan Stop-Service -Name wuauserv,bits,cryptsvc,msiserver -Force -ErrorAction SilentlyContinue $sd = Join-Path $env:SystemRoot ‘SoftwareDistribution’ $cr2 = Join-Path $env:SystemRoot ‘System32\catroot2’ if (Test-Path « $sd.old ») { Remove-Item « $sd.old » -Recurse -Force -ErrorAction SilentlyContinue } if (Test-Path « $cr2.old ») { Remove-Item « $cr2.old » -Recurse -Force -ErrorAction SilentlyContinue } Write-Host « Renommage des caches… » -ForegroundColor Cyan if (Test-Path $sd) { Rename-Item -Path $sd -NewName ‘SoftwareDistribution.old’ -ErrorAction SilentlyContinue } if (Test-Path $cr2) { Rename-Item -Path $cr2 -NewName ‘catroot2.old’ -ErrorAction SilentlyContinue } Write-Host « Redémarrage des services… » -ForegroundColor Cyan Start-Service -Name msiserver,bits,cryptsvc,wuauserv Write-Host « Réparation de l’image Windows (DISM)… » -ForegroundColor Cyan DISM /Online /Cleanup-Image /RestoreHealth | Out-Null Write-Host « Vérification des fichiers système (SFC)… » -ForegroundColor Cyan sfc /scannow | Out-Null Write-Host « Relance de la détection Windows Update… » -ForegroundColor Cyan usoclient StartScan 2>&1 | Out-Null Write-Host « Terminé. Redémarrez si une mise à jour le demande. » -ForegroundColor Green

<h3>Script CMD minimal</h3>
<pre><code class="language-batch">@echo off

echo [1/3] Arret des services… net stop wuauserv net stop cryptSvc net stop bits net stop msiserver echo [2/3] Renommage des caches… ren %SystemRoot%\SoftwareDistribution SoftwareDistribution.old ren %SystemRoot%\System32\catroot2 catroot2.old echo [3/3] Redemarrage des services… net start msiserver net start bits net start cryptSvc net start wuauserv echo Reparation DISM/SFC… DISM /Online /Cleanup-Image /RestoreHealth sfc /scannow echo Detection Windows Update… usoclient StartScan echo Terminé. Redemarrez si nécessaire.

Modèle de journal d’incident

Pour vos tickets internes, copiez-collez ce canevas :

Poste: <Nom du PC> | Édition: Windows 11 24H2 | CPU: Intel/AMD
Symptôme: Boucle "Redémarrer pour terminer l'installation" pour KB5048667
Historique:
- Get-HotFix -Id KB5048667: <présent/absent>
- Reset WU: OK/KO
- DISM/SFC: OK/KO
- Installation .msu offline: OK/KO | Code erreur: <...>
- Masquage wushowhide: effectué/non
- Mise à niveau sur place: effectuée/non
Résultat: <résolu/persiste> | Date/heure: <...>

Bonnes pratiques et précautions

  • Point de restauration : créez-en un avant toute action lourde.
  • BitLocker : notez la clé de récupération et prévoyez de suspendre la protection si nécessaire.
  • Copies de sauvegarde : au minimum pour les postes critiques.
  • Réseau : évitez les connexions instables lors des téléchargements de mises à jour.
  • Nettoyage post-résolution : supprimez *.old et validez l’historique Windows Update.

Ce qu’il faut retenir

La boucle de redémarrage liée à KB5048667 provient le plus souvent d’un cache Windows Update incohérent ou d’une opération en attente. La séquence Réinitialiser WU → DISM/SFC → installation hors ligne → masquage → mise à niveau sur place résout la majorité des cas, sans perte de données. Pensez à vérifier services, antivirus, espace disque et journaux pour éviter les rechutes.

Sommaire