Windows Server 2019 : corriger l’échec KB5043050 (0x800f0831) — guide complet et étapes validées

La mise à jour cumulative KB5043050 échoue sur Windows Server 2019 (1809) avec l’erreur 0x800f0831 ? Suivez ce guide pas‑à‑pas, validé sur le terrain, pour diagnostiquer, réparer le magasin de composants et réussir l’installation, que le serveur soit connecté à Internet, derrière WSUS ou isolé.

Sommaire

Vue d’ensemble et symptômes

Le déploiement de la 2024‑09 Cumulative Update pour Windows Server 2019 (1809) – KB5043050 peut échouer avec le code 0x800f0831. Les symptômes typiques sont :

  • Windows Update affiche « Échec de l’installation » pour KB5043050.
  • Les redémarrages répétés n’y changent rien, et l’historique d’update répertorie plusieurs tentatives infructueuses.
  • Le serveur présente des comportements anormaux (rôles/ fonctionnalités ne s’installent plus, erreurs DISM, etc.).

Comprendre l’erreur 0x800f0831

Le code 0x800f0831 indique généralement que le manifeste d’un package requis est introuvable au moment de l’installation. En pratique, cela survient lorsque :

  • Le serveur ne peut pas récupérer les fichiers de réparation nécessaires (accès restreint à Windows Update, WSUS ou proxy trop restrictif).
  • Le magasin de composants (WinSxS) est endommagé ou incomplet.
  • Des prérequis (par ex. une Servicing Stack Update minimale) ne sont pas présents.
  • Le serveur est en environnement isolé (pas d’accès à Internet) et DISM n’a pas de source locale.

Dans les journaux, on retrouve souvent des mentions de missing package ou missing manifest corrélées au code 0x800f0831.

Plan d’action recommandé

La stratégie ci-dessous combine des correctifs rapides et des remédiations approfondies. Elle a été éprouvée par la communauté, avec un retour concret : la séquence DISM + SFC + redémarrage a aidé au diagnostic et, quand elle n’a pas suffi, une restauration depuis sauvegarde a résolu l’incident.

Procédure express

  1. Réparer le magasin de composants et les fichiers système, redémarrer, puis réessayer l’installation de la KB : DISM /Online /Cleanup-Image /ScanHealth DISM /Online /Cleanup-Image /CheckHealth DISM /Online /Cleanup-Image /RestoreHealth sfc /scannow
  2. Si l’environnement est derrière WSUS/proxy, autoriser le contenu de réparation (voir plus bas) et/ou fournir une source locale à DISM.
  3. En cas d’échec persistant, réinitialiser les composants Windows Update puis retenter.
  4. Si le téléchargement échoue, installer la KB hors‑ligne (.msu) ou envisager une réparation sur place (in‑place upgrade).
  5. En dernier recours (ou pour rétablir la production au plus vite), restaurer depuis une sauvegarde valide.

Procédure détaillée pas à pas

Pré‑requis et sauvegardes

  • Intervenir en fenêtre de maintenance validée.
  • Disposer d’une sauvegarde récente ou d’un snapshot (VM) récupérable.
  • Vérifier l’espace disque (au moins 10 Go libres sur C:\, davantage si WinSxS est volumineux).

Nettoyer le magasin de composants

Un nettoyage peut diminuer les incohérences avant la réparation :

DISM /Online /Cleanup-Image /StartComponentCleanup

Optionnel : /ResetBase réduit l’empreinte mais supprime la possibilité de désinstaller certaines mises à jour. À n’utiliser que si votre politique de rollback l’autorise.

Réparer avec DISM et SFC

Exécuter les commandes suivantes dans un Invite de commandes en administrateur :

DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /RestoreHealth
sfc /scannow

Interprétez les retours :

  • Si RestoreHealth affiche des erreurs de source, fournissez une source locale ci‑dessous.
  • Si sfc corrige des fichiers, redémarrez puis relancez l’installation de KB5043050.

Autoriser le contenu de réparation quand WSUS ou proxy est en place

Dans certains environnements, Windows ne peut pas télécharger les fichiers de réparation nécessaires. Activez la stratégie :

  • Stratégie de groupeConfiguration ordinateurModèles d’administrationSystèmeSpécifier les paramètres pour l’installation des composants facultatifs et la réparation des composants.
  • Cochez : Contacter directement Windows Update pour télécharger le contenu de réparation…

Après modification, exécuter gpupdate /force et réessayer.

Fournir une source locale à DISM sur un serveur isolé

Montez l’ISO de Windows Server 2019 correspondant à l’édition installée, puis identifiez l’index de l’image :

dism /Get-WimInfo /WimFile:D:\sources\install.wim

Réparez en pointant vers l’index adéquat (remplacez <Index>) :

DISM /Online /Cleanup-Image /RestoreHealth /Source:WIM:D:\sources\install.wim:&lt;Index&gt; /LimitAccess

Astuce : si votre média utilise install.esd, remplacez WIM: par ESD:.

Réinitialiser les composants Windows Update

Arrêtez les services, renommez les caches, relancez les services :

net stop wuauserv
net stop bits
net stop cryptsvc
net stop msiserver
ren C:\Windows\SoftwareDistribution SoftwareDistribution.old
ren C:\Windows\System32\catroot2 catroot2.old
net start wuauserv
net start bits
net start cryptsvc
net start msiserver

Puis réessayez l’installation via Windows Update ou en mode hors‑ligne.

Installer la KB hors‑ligne (.msu)

Lorsque le téléchargement échoue côté Windows Update, installez le package .msu téléchargé en amont (ex. C:\Temp\windows10.0-kb5043050-x64.msu) :

wusa C:\Temp\windows10.0-kb5043050-x64.msu /quiet /norestart

Alternative : DISM sait aussi consommer un .msu ou un .cab :

DISM /Online /Add-Package /PackagePath:C:\Temp\windows10.0-kb5043050-x64.msu

Vérifier la pile de maintenance (SSU) et les packages

Sur Windows Server 2019, certaines cumulatives exigent une version minimale de la Servicing Stack. Contrôlez les packages présents :

dism /online /get-packages /format:table | more

Recherchez dans la liste un package Servicing Stack récent. À défaut, installez d’abord la SSU applicable, puis relancez la LCU (KB5043050).

Analyser les journaux pour identifier le package manquant

Inspectez C:\Windows\Logs\CBS\CBS.log et générez un WindowsUpdate.log lisible :

findstr /c:"0x800f0831" /c:"missing" /c:"package" "%windir%\Logs\CBS\CBS.log" &gt; "%temp%\cbs_0831.txt"
PowerShell -NoProfile -Command "Get-WindowsUpdateLog"

Cherchez les mentions du package absent pour déduire le prérequis à installer.

Cas d’école : environnements WSUS et proxy

Dans les réseaux filtrés, 0x800f0831 découle souvent d’un refus d’accès au contenu de réparation. Vérifications rapides :

  • Stratégie GPO « Contacter directement Windows Update pour le contenu de réparation » activée (voir plus haut).
  • Proxy correct pour le compte système : netsh winhttp show proxy. Si besoin, importez les paramètres IE : netsh winhttp import proxy source=ie.
  • Journalisation BITS et WindowsUpdateClient (Observateur d’événements) pour confirmer l’échec réseau.

Automatisation PowerShell prête à l’emploi

Le script suivant orchestre nettoyage, réparation et installation hors‑ligne s’il trouve le .msu de KB5043050 dans C:\Temp. Adaptez‑le à votre contexte.

$ErrorActionPreference = 'Stop'
$Transcript = Join-Path $env:TEMP ("KB5043050_fix_{0:yyyyMMdd_HHmmss}.log" -f (Get-Date))
Start-Transcript -Path $Transcript

function Restart-ServiceSafe {
param(\[string\[]]\$Names)
foreach (\$n in \$Names) {
try { Restart-Service -Name \$n -ErrorAction Stop } catch {
Write-Warning "Impossible de redémarrer \$n, tentative start..."
try { Start-Service -Name \$n -ErrorAction Stop } catch {}
}
}
}

Write-Host "Nettoyage du magasin de composants..."
dism /Online /Cleanup-Image /StartComponentCleanup

Write-Host "Réparation DISM..."
dism /Online /Cleanup-Image /ScanHealth
dism /Online /Cleanup-Image /CheckHealth
\$dismRestore = (Start-Process -FilePath dism -ArgumentList "/Online","/Cleanup-Image","/RestoreHealth" -Wait -PassThru).ExitCode
if (\$dismRestore -ne 0) { Write-Warning "RestoreHealth a signalé un problème (code \$dismRestore)." }

Write-Host "Vérification SFC..."
sfc /scannow

Write-Host "Réinitialisation WU..."
Stop-Service wuauserv -Force -ErrorAction SilentlyContinue
Stop-Service bits -Force -ErrorAction SilentlyContinue
Stop-Service cryptsvc -Force -ErrorAction SilentlyContinue
Stop-Service msiserver -Force -ErrorAction SilentlyContinue
Rename-Item "\$env\:windir\SoftwareDistribution" "SoftwareDistribution.old" -ErrorAction SilentlyContinue
Rename-Item "\$env\:windir\System32\catroot2" "catroot2.old" -ErrorAction SilentlyContinue
Start-Sleep -Seconds 2
Restart-ServiceSafe -Names @('wuauserv','bits','cryptsvc','msiserver')

\$msu = "C:\Temp\windows10.0-kb5043050-x64.msu"
if (Test-Path \$msu) {
Write-Host "Installation hors-ligne de KB5043050..."
\$code = (Start-Process -FilePath wusa.exe -ArgumentList \$msu,"/quiet","/norestart" -Wait -PassThru).ExitCode
Write-Host "WUSA a retourné le code \$code."
} else {
Write-Host "Package .msu introuvable dans C:\Temp. Passez en mode en ligne ou placez le fichier et relancez."
}

Write-Host "Liste des packages installés récemment :"
dism /online /get-packages /format\:table | Out-Host

Stop-Transcript
Write-Host "Journal : \$Transcript" </code></pre>

<h2>Tableau de décision rapide</h2>
<table>
  <thead>
    <tr>
      <th>Scénario</th>
      <th>Indicateurs</th>
      <th>Action prioritaire</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Serveur connecté à Internet</td>
      <td>Échec 0x800f0831, pas de proxy</td>
      <td>DISM + SFC, redémarrage, retenter WU. Si échec&nbsp;: reset WU, installer .msu.</td>
    </tr>
    <tr>
      <td>Réseau WSUS / proxy restrictif</td>
      <td>Erreurs BITS / accès refusé</td>
      <td>Activer GPO «&nbsp;contenu de réparation&nbsp;», vérifier proxy WinHTTP, retester.</td>
    </tr>
    <tr>
      <td>Environnement isolé</td>
      <td>Pas d’accès WU</td>
      <td>DISM avec <code>/Source</code> depuis <code>install.wim</code>/<code>.esd</code>, puis .msu hors‑ligne.</td>
    </tr>
    <tr>
      <td>Magasin corrompu</td>
      <td>DISM «&nbsp;source introuvable&nbsp;», SFC corrige</td>
      <td>DISM <code>/Source</code> + <code>/LimitAccess</code>, puis retenter l’update.</td>
    </tr>
    <tr>
      <td>Blocage persistant</td>
      <td>Échecs répétés même hors‑ligne</td>
      <td>In‑place upgrade avec le média correspondant, ou restauration depuis sauvegarde.</td>
    </tr>
  </tbody>
</table>

<h2>Vérifications après correction</h2>
<ul>
  <li>Confirmer l’installation de la KB&nbsp;:
    <pre><code>Get-HotFix -Id KB5043050

Contrôler la cohérence DISM :

DISM /Online /Cleanup-Image /CheckHealth

Valider que les rôles et fonctionnalités s’installent à nouveau (ex. Ajouter des rôles et fonctionnalités dans le Gestionnaire de serveur).
Lancer un chkdsk /scan pour vérifier le volume système.

Diagnostic avancé

Observer les journaux pertinents

  • CBS.log : %windir%\Logs\CBS\CBS.log (mots‑clés : 0x800f0831, missing, package).
  • WindowsUpdate.log : généré via Get-WindowsUpdateLog.
  • Observateur d’événements : Applications and Services Logs → Microsoft → Windows → WindowsUpdateClient → Operational.

Identifier un package prérequis manquant

Quand CBS mentionne un package absent, installez d’abord ce prérequis (souvent une SSU ou une ancienne LCU), puis relancez KB5043050. Vous pouvez filtrer la liste des packages installés :

dism /online /get-packages /format:table | findstr /i "servicing stack"
dism /online /get-packages /format:table | findstr /i "Security Update"

Bonnes pratiques pour éviter la récurrence

  • Snapshots/sauvegardes avant toute opération de maintenance.
  • Documenter les paramètres WSUS/proxy et valider l’accès au contenu de réparation.
  • Programmer un entretien régulier du magasin de composants (StartComponentCleanup).
  • Surveiller l’espace disque et la santé du volume (chkdsk /scan).
  • Standardiser un runbook d’installation hors‑ligne des KB critiques pour les environnements isolés.

FAQ et erreurs courantes

0x800f0831 vs 0x800f081f ? Les deux indiquent des fichiers sources manquants, mais 0x800f0831 survient fréquemment quand un manifeste d’update antérieur est introuvable. Le traitement est similaire : fournir une source DISM crédible et/ou installer le prérequis.

DISM indique « Les fichiers sources sont introuvables » : utilisez /Source:WIM:…:<Index> avec un ISO correspondant à votre édition (Datacenter/Standard, Desktop Experience/Core) et ajoutez /LimitAccess pour empêcher tout appel à Windows Update.

WUSA retourne un code d’erreur : consultez CBS.log et les journaux WindowsUpdateClient pour connaître la cause exacte (conflit de package, redémarrage en attente, SSU manquante).

Redémarrage en attente : terminez l’installation en cours (pending reboot) avant de relancer DISM/WUSA. Vous pouvez vérifier via la clé HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired.

Exemple de séquence complète annotée

  1. Nettoyage : DISM /Online /Cleanup-Image /StartComponentCleanup
  2. Réparation : DISM /Online /Cleanup-Image /RestoreHealth, puis sfc /scannow
  3. Réinitialisation WU : commandes net stop/ren/net start
  4. Installation hors‑ligne (si besoin) : wusa ... /quiet /norestart
  5. Vérification : Get-HotFix -Id KB5043050 et DISM /Online /CheckHealth

Quand envisager la restauration ou l’in‑place upgrade

Si le magasin de composants reste incohérent malgré DISM /Source, si la machine a connu une corruption disque/mémoire, ou si la continuité de service est prioritaire, procédez comme suit :

  • Restauration depuis sauvegarde (prônée et effectivement appliquée dans le cas rapporté), pour retrouver un état sain rapidement.
  • Réparation sur place : exécuter le setup.exe du média Windows Server 2019 correspondant, conserver fichiers et applications, puis appliquer à nouveau la KB.

Check‑list de validation

  • La stratégie GPO « contenu de réparation » est‑elle activée si WSUS/proxy ?
  • DISM et SFC ont‑ils terminé sans erreurs ?
  • Une source locale valide a‑t‑elle été fournie à DISM en environnement isolé ?
  • Les composants Windows Update ont‑ils été réinitialisés proprement ?
  • La KB5043050 apparaît‑elle dans Get-HotFix et l’OS fonctionne‑t‑il normalement ?

Résumé des retours d’expérience

  • La séquence DISM + SFC + redémarrage a été proposée et confirmée utile par au moins un participant.
  • Face à la persistance de 0x800f0831, l’auteur initial a restauré depuis une sauvegarde, ce qui a réglé son incident.

Annexes utiles

Commandes essentielles prêtes à copier‑coller

:: Réparation magasin + fichiers système
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /RestoreHealth
sfc /scannow

\:: Source locale depuis ISO
dism /Get-WimInfo /WimFile\:D:\sources\install.wim
DISM /Online /Cleanup-Image /RestoreHealth /Source\:WIM\:D:\sources\install.wim:\ /LimitAccess

\:: Réinitialiser Windows Update
net stop wuauserv
net stop bits
net stop cryptsvc
net stop msiserver
ren C:\Windows\SoftwareDistribution SoftwareDistribution.old
ren C:\Windows\System32\catroot2 catroot2.old
net start wuauserv
net start bits
net start cryptsvc
net start msiserver

\:: Installer la KB hors‑ligne
wusa C:\Temp\windows10.0-kb5043050-x64.msu /quiet /norestart

\:: Journalisation
findstr /c:"0x800f0831" /c:"missing" /c:"package" "%windir%\Logs\CBS\CBS.log" > "%temp%\cbs\_0831.txt"
PowerShell -NoProfile -Command "Get-WindowsUpdateLog" 

Conseils pratiques

  • Exécuter les commandes depuis une Invite de commandes/PowerShell en mode administrateur.
  • Veiller à ce que l’ISO utilisé comme source DISM corresponde à l’édition installée (Datacenter/Standard, Core/Desktop Experience).
  • Éviter d’interrompre une installation en cours (état pending) avant d’appliquer de nouvelles KB.
  • Consigner chaque action dans un journal de changement pour faciliter l’audit et le troubleshooting futur.

Conclusion

L’erreur 0x800f0831 sur KB5043050 est le plus souvent un problème de source de réparation ou de magasin de composants incohérent. En appliquant méthodiquement : DISM + SFC, autorisation du contenu de réparation (ou source locale), réinitialisation Windows Update et, si nécessaire, installation hors‑ligne ou in‑place upgrade, vous retrouvez un système sain et à jour. Pour des environnements critiques, gardez une voie de rollback prête : c’est souvent la solution la plus rapide pour restaurer la production tout en planifiant une remédiation durable.

Sommaire