KB5034439 erreur 0x80070643 sur Windows Server 2022/21H2 : correctif WinRE (KB5042322) et guide complet

La mise à jour de sécurité KB5034439 échoue avec l’erreur 0x80070643 sur Windows Server 2022/21H2 ? La cause la plus courante est une partition WinRE trop petite. Voici la procédure fiable pour corriger, puis installer la remplaçante KB5042322.

Sommaire

Vue d’ensemble

Sur Windows Server 2022 (version 21H2), l’installation de la mise à jour de sécurité KB5034439 peut se solder par l’erreur 0x80070643 (ERROR_INSTALL_FAILURE). Dans la grande majorité des cas, la racine du problème est la mise à jour du Windows Recovery Environment (WinRE) qui ne parvient pas à s’appliquer faute d’espace libre suffisant dans la partition de récupération. Microsoft a retiré KB5034439 et l’a remplacée par KB5042322, qui contient le même correctif WinRE. L’installation requiert au minimum 250 Mo d’espace libre dans la partition WinRE pour aboutir.

Symptômes typiques

  • Windows Update télécharge la mise à jour, tente l’installation, puis affiche 0x80070643.
  • Dans Event Viewer > Applications and Services Logs > Microsoft > Windows > WinREAgent, des événements indiquent un échec de mise à jour ou de montage de winre.wim.
  • Le journal C:\Windows\Logs\CBS\CBS.log mentionne des erreurs lors de l’opération de maintenance de l’image WinRE.
  • reagentc /info montre un Windows RE location inexistant, erroné ou Status: Disabled.

Ce qui bloque

  • Partition WinRE trop petite/saturée : l’image winre.wim mise à jour ne tient pas.
  • WinRE désactivé ou absent : l’agent de mise à jour ne trouve pas de cible.
  • Distribution via WSUS/MECM : cette mise à jour WinRE spécifique n’est pas publiée sur WSUS/MECM ; elle n’est proposée que via Windows Update.

Ce qui a changé côté Microsoft

Le correctif WinRE diffusé initialement via KB5034439 a été remplacé par KB5042322. Sur un serveur affecté, l’objectif n’est donc pas d’« forcer » KB5034439 mais de mettre la partition WinRE à la bonne taille, puis de laisser Windows Update proposer et installer KB5042322.

Pré-requis et bonnes pratiques

  • Sauvegarde/snapshot : effectuez une sauvegarde ou un snapshot (VM) avant toute opération sur les partitions.
  • Fenêtre de maintenance : même si l’opération est rapide, prévoyez une fenêtre pour redémarrage si nécessaire.
  • BitLocker : si C: est chiffré, suspendez temporairement la protection avant les opérations de partitionnement (ex. : manage-bde -protectors -disable C:) et réactivez-la ensuite.
  • Clusters/HA : basculez la charge hors du nœud avant modification.

Procédure recommandée

Objectif : garantir ≥ 250 Mo libres dans une partition WinRE valide, puis installer KB5042322 via Windows Update.

Vérifier l’état actuel de WinRE

reagentc /info

Notez : statut Enabled/Disabled, chemin de WinRE (Windows RE location) et Boot Configuration Data. Repérez aussi le disque/numéro de partition retourné dans le chemin (ex. \\?\GLOBALROOT\device\harddisk0\partition4\Recovery\WindowsRE).

Désactiver WinRE

reagentc /disable

Cette étape libère les verrous sur la partition et permet de la recréer proprement.

Préparer l’espace libre

Réduisez la partition système (généralement C:) de 250 Mo au minimum afin de créer l’espace nécessaire juste après la partition OS.

diskpart
list disk
sel disk <index_du_disque_OS>
list part
sel part <index_partition_OS>
shrink desired=250 minimum=250

Astuce : si shrink échoue (fichiers inamovibles), essayez minimum=250 sans desired, libérez un peu plus d’espace (300–500 Mo), ou utilisez la défragmentation. Assurez-vous que l’espace libre soit contigu immédiatement après la partition OS.

Recréer la partition WinRE

Si une ancienne partition WinRE existe, supprimez-la :

sel part <index_partition_WinRE>
delete partition override

Puis créez la nouvelle partition en fonction du style de partition du disque :

Style de disqueCommandes DiskPartRemarques
GPT (UEFI)create partition primary id=de94bba4-06d1-4d40-a16a-bfd50179d6ac gpt attributes=0x8000000000000001 format quick fs=ntfs label="Windows RE tools"Le GUID « de94bba4… » identifie une partition WinRE. Les attributs GPT la marquent comme cachée et requise.
MBR (Legacy BIOS)create partition primary id=27 format quick fs=ntfs label="Windows RE tools" rem Si nécessaire : set id=27L’ID 27 correspond à la partition de récupération. Ne lui assignez pas de lettre.

Réactiver WinRE et valider

exit
reagentc /enable
reagentc /info

Attendez le statut Enabled et vérifiez que le chemin pointe bien sur la nouvelle partition WinRE. Si nécessaire, forcez le chemin :

reagentc /setreimage /path R:\Recovery\WindowsRE
reagentc /enable

(R: étant une lettre temporaire que vous auriez montée sur la partition WinRE juste pour l’opération.)

Installer la mise à jour remplaçante

Ouvrez Windows Update et lancez une recherche. Installez KB5042322, qui remplace KB5034439. Un redémarrage peut être requis.

Vérification facultative : la version WinRE (dans winre.wim) doit être ≥ 10.0.20348.2201. Deux options :

  • Observateur d’événements > WinREAgent : événements de succès après mise à jour.
  • Inspection de l’image : copiez temporairement winre.wim depuis Windows RE location et lancez : DISM /Get-ImageInfo /ImageFile:<chemin_vers_winre.wim>

Procédure condensée (mémo)

  1. reagentc /info pour l’état.
  2. reagentc /disable.
  3. diskpart : réduire la partition OS (≥ 250 Mo).
  4. Recréer la partition WinRE (GPT : GUID WinRE + attributs ; MBR : ID 27) et formater en NTFS.
  5. reagentc /enable puis /info pour valider.
  6. Windows Update : installer KB5042322.

Tableau de diagnostic rapide

SymptômeIndicateurAction
0x80070643 lors de l’installationÉvénements WinREAgent d’échecRedimensionner/recréer WinRE puis relancer via Windows Update
WinRE introuvablereagentc /infoDisabledCréer partition WinRE, /setreimage, /enable
Impossible de réduire C:shrink échoueLibérer plus d’espace, défragmenter, viser 300–500 Mo si possible
Pas de mise à jour proposée en WSUS/MECMCatalogue vide pour ce correctifUtiliser Windows Update directement pour KB5042322

Automatisation : script d’exemple PowerShell

Le script ci‑dessous (à exécuter en PowerShell admin, sur un serveur non‑BitLocker ou avec BitLocker suspendu) : vérifie WinRE, réduit la partition OS de 300 Mo, crée la partition WinRE (détection GPT/MBR), puis réactive WinRE. Adaptez selon vos contraintes et testez d’abord en pré‑prod.

# AVERTISSEMENT : sauvegardez/snapshot avant usage.
# Objectif : réserver ~300 Mo pour WinRE et l'activer proprement.

\$targetShrinkMB = 300

# 1) Déterminer le disque système et le style (GPT/MBR)

\$sysDisk = Get-Partition -DriveLetter C | Get-Disk
\$gpt     = \$sysDisk.PartitionStyle -eq 'GPT'

# 2) Partition OS (C:)

\$osPart = Get-Partition -DriveLetter C

# 3) Désactiver WinRE (sans erreur si déjà désactivé)

Start-Process -FilePath reagentc.exe -ArgumentList '/disable' -Wait -NoNewWindow

# 4) Réduire C: (si possible)

# Remarque : sous Windows Server, Shrink via Resize-Partition demande des droits admin et de l'espace libre contigu.

Resize-Partition -DriveLetter C -Size (\$osPart.Size - (\$targetShrinkMB \* 1MB)) -ErrorAction Stop

# 5) Créer la partition WinRE dans l'espace libéré

\$free = Get-PartitionSupportedSize -DiskNumber \$sysDisk.Number -PartitionNumber \$osPart.PartitionNumber
\$newStart = \$free.SizeMax
\$newSize  =  (\$targetShrinkMB \* 1MB)

# Sur certains serveurs, SizeMax ne reflète pas l'espace post‑OS immédiatement.

# On positionne la nouvelle partition à la fin maximale disponible.

\$newPart = New-Partition -DiskNumber \$sysDisk.Number -UseMaximumSize:\$false -Size \$newSize -AssignDriveLetter:\$false -ErrorAction Stop

# 6) Formater en NTFS (sans lettre)

Format-Volume -Partition \$newPart -FileSystem NTFS -NewFileSystemLabel 'Windows RE tools' -Confirm:\$false

# 7) Marquer le type WinRE selon GPT/MBR

if (\$gpt) {
\# GUID WinRE + attributs (cachée/required)
\$null = Set-Partition -DiskNumber \$sysDisk.Number -PartitionNumber \$newPart.PartitionNumber -GptType '{de94bba4-06d1-4d40-a16a-bfd50179d6ac}'
\$null = Set-Partition -DiskNumber \$sysDisk.Number -PartitionNumber \$newPart.PartitionNumber -IsHidden:\$true -IsReadOnly:\$false
\# L'équivalent des attributs GPT détaillés est appliqué par le type WinRE + hidden.
} else {
\# MBR : ID 27
\$null = Set-Partition -DiskNumber \$sysDisk.Number -PartitionNumber \$newPart.PartitionNumber -MbrType 'IbmType0x27'
\$null = Set-Partition -DiskNumber \$sysDisk.Number -PartitionNumber \$newPart.PartitionNumber -IsHidden:\$true
}

# 8) Monter temporairement pour définir le chemin (lettre R: si libre)

\$letter = 'R'
if ((Get-Volume -FileSystemLabel 'Windows RE tools' -ErrorAction SilentlyContinue) -eq \$null) {
\$null = Set-Partition -DiskNumber \$sysDisk.Number -PartitionNumber \$newPart.PartitionNumber -NewDriveLetter \$letter
} else {
\$letter = (Get-Volume -FileSystemLabel 'Windows RE tools').DriveLetter
}

# 9) Créer l'arborescence attendue

New-Item -ItemType Directory -Path "\$(\$letter):\Recovery\WindowsRE" -Force | Out-Null

# 10) Réactiver WinRE et fixer le chemin

Start-Process -FilePath reagentc.exe -ArgumentList "/setreimage /path \$(\$letter):\Recovery\WindowsRE" -Wait -NoNewWindow
Start-Process -FilePath reagentc.exe -ArgumentList '/enable' -Wait -NoNewWindow

# 11) Nettoyage : retirer la lettre (partition cachée)

\$null = Remove-PartitionAccessPath -DiskNumber \$sysDisk.Number -PartitionNumber \$newPart.PartitionNumber -AccessPath "\$letter:\`" -ErrorAction SilentlyContinue

# 12) Vérification

Start-Process -FilePath reagentc.exe -ArgumentList '/info' -Wait -NoNewWindow
Write-Host "WinRE recréé et activé. Lancez Windows Update (KB5042322)." 

Cas particuliers et contournements

Partition OEM entre l’OS et la fin du disque

Si une partition OEM (outils constructeur) empêche de créer WinRE juste après C:, deux options :

  • Créer WinRE juste après l’OEM si le chemin n’est pas un pré‑requis chez vous (Windows peut référencer n’importe quelle partition WinRE valide).
  • Réordonner (déplacement de partitions) : opération plus risquée, à réserver aux cas extrêmes et après sauvegarde complète.

Disque dynamique, Storage Spaces, SAN

Les volumes logiques fonctionnent, mais assurez‑vous d’avoir un espace contigu libre. Sur Storage Spaces, créez l’espace libre dans le pool du disque système. Sur disques dynamiques, préférez une migration vers GPT basique si possible ; à défaut, créez WinRE sur un disque basique du même hôte et pointez‑y reagentc.

BitLocker

Suspendez la protection sur C: avant shrink, sinon la réduction peut échouer. N’oubliez pas de réactiver BitLocker après la réussite (manage-bde -protectors -enable C:).

Serveur sans partition WinRE initiale

Sur certaines images « durcies », WinRE a été supprimé. La procédure de recréation ci‑dessus est suffisante ; veillez à créer l’arborescence \Recovery\WindowsRE et à exécuter reagentc /setreimage avant /enable.

Serveurs hors‑ligne / sans accès Internet

Le correctif WinRE concerné n’est pas publié sur WSUS/MECM ; prévoyez un accès provisoire à Windows Update pour l’installation de KB5042322 (ou un relais/proxy qui autorise le trafic Windows Update).

Vérifications post‑remédiation

  • Windows Update ne propose plus KB5034439 (retirée) et applique KB5042322 sans erreur.
  • Event Viewer > WinREAgent : événements de réussite.
  • reagentc /info : Windows RE status: Enabled, chemin valide.
  • Version WinRE : 10.0.20348.2201 ou supérieure dans winre.wim.

Erreurs fréquentes et solutions

Message/CodeCause probableSolution
0x80070643Partition WinRE trop petiteRecréer WinRE (≥ 250 Mo), puis KB5042322
reagentc /enable échoueChemin WinRE manquantreagentc /setreimage /path R:\Recovery\WindowsRE puis /enable
shrink refuseFichiers inamovibles, espace insuffisantDéfragmenter, viser 300–500 Mo, libérer de l’espace
WinRE toujours DisabledPartition non marquée WinREVérifier GUID (GPT) ou ID 27 (MBR), attributs cachés

Checklist opérateur

  • Snapshot/sauvegarde OK.
  • reagentc /info exécuté et archivé.
  • WinRE désactivé (/disable).
  • diskpart shrink réussi (≥ 250 Mo).
  • Partition WinRE créée : GPT = GUID WinRE + attributs ; MBR = ID 27.
  • Format NTFS, sans lettre.
  • reagentc /setreimage (si nécessaire), puis /enable.
  • KB5042322 installée via Windows Update.
  • Journal WinREAgent propre, reagentc /info à jour.

FAQ

Faut‑il exactement 250 Mo ?
250 Mo est le minimum pour la mise à jour. Par prudence, réservez 300–500 Mo pour absorber de futures mises à jour WinRE.

Peut‑on conserver l’ancienne partition WinRE ?
Oui si elle comporte assez d’espace libre. Sinon, supprimez‑la et recréez‑la. Évitez les partitions multiples de récupération ; un seul emplacement WinRE actif suffit.

Pourquoi Windows Update seulement ?
Le mécanisme de mise à jour WinRE utilisé ici n’est pas publié en tant que correctif classique WSUS/MECM. Il est conçu pour passer par Windows Update.

Et si la machine est « gold image » ?
Ajustez la partition WinRE dans l’image de référence pour éviter d’avoir à corriger chaque clone.

Exemples de sorties attendues

Exemple reagentc /info après remédiation :

Windows RE status: Enabled
Windows RE location: \\?\GLOBALROOT\device\harddisk0\partition4\Recovery\WindowsRE
Boot Configuration Data (BCD) identifier: &lbrace;current&rbrace;

En bref

L’échec de KB5034439 avec 0x80070643 sur Windows Server 2022/21H2 provient quasi toujours d’une partition WinRE trop petite. Agrandissez ou recréez la partition pour garantir ≥ 250 Mo libres, réactivez WinRE, puis installez la mise à jour remplaçante KB5042322 via Windows Update. Après cela, vérifiez que WinRE est Enabled et que la version de l’image est au moins 10.0.20348.2201.

Conseil final : intégrez ce correctif dans votre pipeline d’images/automation (Build/Runbook) afin que vos futurs serveurs naissent avec une partition WinRE suffisante, évitant ainsi toute régression lors des prochaines mises à jour.

Sommaire