Sur Windows Server 2022, reagentc
peut sembler « bloqué » plusieurs minutes. Ce guide explique la cause la plus fréquente (verrou WinRE tenu par une autre opération) et détaille une procédure sûre pour diagnostiquer, déverrouiller, puis réparer ou redimensionner la partition de récupération.
Vue d’ensemble de la situation
Contexte : tout juste après une réinstallation de Windows Server 2022, chaque exécution de reagentc /info
(ou de toute autre sous‑commande, sauf / ?
) fige la console plusieurs minutes, sans message. Le même gel affecte PowerShell ISE. SFC
et DISM
ne remontent aucune corruption. L’objectif est de réparer ou de redimensionner la partition de récupération avec reagentc
.
Ce qui a été tenté et observé
Étape | Action ou constat | Résultat |
---|---|---|
1 | Conseil initial : désactiver puis réactiver WinREreagentc /disable → reagentc /enable → reagentc /info | Les commandes se lancent mais restent longtemps sans réponse : la console est figée plusieurs minutes. |
2 | Production d’un journal :reagentc /disable /logpath C:\Temp\reagent.log | Le journal contient : « SetWinReOperationSyncKey – another installation in progress ». |
3 | Réinstallation de PowerShell ISE via Paramètres ▸ Applications ▸ Fonctionnalités facultatives | Le gel de PowerShell ISE disparaît (l’éditeur se relance normalement). |
4 | Nouvelle tentative : attendre ~10 minutes après le lancement de reagentc | La commande finit par répondre : le problème est lié à un verrou et/ou à une opération de maintenance lente en arrière‑plan. |
Pourquoi reagentc
se fige ? L’explication claire
Le message du journal « SetWinReOperationSyncKey – another installation in progress » indique qu’un autre processus tient le verrou logiciel sur la gestion de WinRE (Windows Recovery Environment). En pratique, cela arrive lorsque :
- Windows Update ou le service Windows Modules Installer (
TrustedInstaller
/TiWorker.exe
) finalise une mise à jour qui modifie WinRE (montage deWinre.wim
, nettoyage de composants, injection de pilotes, etc.). - Une installation de fonctionnalités facultatives (ex. : .NET, ISE, RSAT) ou des pilotes OEM vient d’être déclenchée.
- Des opérations de maintenance sont en attente (staged) et doivent être rejouées au redémarrage.
Dans tous ces cas, reagentc
attend silencieusement que le verrou se libère avant de modifier WinRE. Ce n’est donc pas un « plantage », mais une attente de verrou visant à éviter toute corruption de la partition ou de l’image de récupération.
Plan d’action rapide (si vous êtes pressé)
- Vérifier les mises à jour en attente et redémarrer si nécessaire :
powershell
Get-WindowsUpdateLog | Out-Null # (facultatif, pour centraliser les journaux)
Get-Service usosvc, wuauserv, TrustedInstaller | Format-Table -Auto
Dans l’interface, ouvrez Paramètres ▸ Windows Update et installez ce qui est proposé. Redémarrez ensuite le serveur.
- Attendre la fin de l’activité de maintenance : patientez quelques minutes après ouverture de session (surveillez le CPU/disk via le Gestionnaire des tâches/Moniteur de ressources).
- Relancer proprement WinRE :
cmd
reagentc /disable
reagentc /enable
reagentc /info
- Si des opérations sont en suspens, purgez‑les puis redémarrez :
cmd
dism /online /cleanup-image /revertpendingactions
shutdown /r /t 0
Note : si la commande
/revertpendingactions
signale qu’elle n’est pas prise en charge en mode online, exécutez‑la en mode hors ligne depuis WinRE :dism /image:C:\ /cleanup-image /revertpendingactions
.
Diagnostiquer finement le verrou WinRE
Activer la journalisation de reagentc
cmd
mkdir C:\Temp 2>NUL
reagentc /info /logpath C:\Temp\reagent.log
type C:\Temp\reagent.log
Si vous retrouvez la chaîne « another installation in progress », laissez la maintenance s’achever ou redémarrez pour forcer la reprise propre des opérations.
Observer les processus de maintenance
cmd
tasklist /v | findstr /i "tiworker trustedinstaller dism setuphost musnotification mo"
La présence et l’activité de TiWorker.exe
/TrustedInstaller
(CPU/disk non nuls) sont de bons indices qu’une phase de servicing est en cours.
Consulter les journaux pertinents
- Observateur d’événements :
- Journaux Windows ▸ Setup
- Applications et services ▸ Microsoft ▸ Windows ▸ Servicing ▸ Operational
- Applications et services ▸ Microsoft ▸ Windows ▸ WindowsUpdateClient ▸ Operational
- Fichiers CBS/DIAGNOSTIC :
C:\Windows\Logs\CBS\CBS.log
,C:\Windows\Logs\DISM\dism.log
.
Contrôles structurels de WinRE
Élément | Commande | Attendu / Remarques |
---|---|---|
État WinRE | reagentc /info | Windows RE status: Enabled + chemin de l’image (\\?\GLOBALROOT\device\harddiskX\partitionY\Recovery\WindowsRE ). |
Espace libre | diskpart → list disk , list volume (voir la partition « Recovery ») | Au moins 1 Go libre recommandé pour les mises à jour WinRE récentes. |
Fichiers WinRE | dir C:\Windows\System32\Recovery | Présence de Winre.wim ou d’un ReAgent.xml cohérent. |
Registre WinRE | reg query HKLM\System\CurrentControlSet\Control\WinRE /s | WinrePath doit pointer vers \Recovery\WindowsRE\Winre.wim sur la bonne partition. |
Remise en route : méthodes au cas par cas
Déverrouiller en douceur (scénario le plus courant)
- Installez les mises à jour proposées et redémarrez.
- À la reprise, attendez la fin de l’activité disque/CPU (2–10 minutes selon la charge).
- Exécutez :
cmd reagentc /disable reagentc /enable reagentc /info
Purger des opérations en attente
Lorsque des actions de servicing sont « en file d’attente », vous pouvez les annuler pour repartir d’un état sain.
cmd
dism /online /cleanup-image /revertpendingactions
shutdown /r /t 0
Si non supporté en ligne, passez par WinRE :
WinRE> dism /image:C:\ /cleanup-image /revertpendingactions
WinRE> exit
Réinitialiser les pointeurs WinRE
cmd
reagentc /disable
reagentc /setreimage /path X:\Recovery\WindowsRE /target C:\Windows
reagentc /enable
reagentc /info
Remplacez X:
par la lettre temporaire de la partition de récupération (voir plus bas pour l’attribuer/retirer).
Redimensionner la partition de récupération (quand l’espace manque)
Si la partition de récupération est trop petite, deux approches :
- Étendre la partition existante si de l’espace non alloué est contigu derrière elle ;
- Créer une nouvelle partition de récupération à la fin du disque, puis y déplacer WinRE.
Préparatifs et précautions
- Point de sauvegarde (snapshot hyperviseur, sauvegarde d’état système, etc.).
- BitLocker : s’il est actif, suspendez‑le avant toute opération sur les partitions :
powershell Get-BitLockerVolume | Suspend-BitLocker -MountPoint "C:" -RebootCount 1 # ou manage-bde -protectors -disable C: -RebootCount 1
- Planifiez un redémarrage si nécessaire.
Attribuer une lettre à la partition Recovery (temporaire)
cmd
diskpart
list disk
select disk 0 # adaptez si besoin
list partition
select partition <N> # la partition Recovery
assign letter=R
exit
Vous pourrez ensuite parcourir R:\
et créer R:\Recovery\WindowsRE
si nécessaire.
Étendre la partition Recovery existante
Si de l’espace non alloué est contigu après la partition Recovery, utilisez la Gestion des disques ou diskpart
pour l’étendre.
cmd
diskpart
select disk 0
select partition <N> # Recovery
extend
exit
Créer une nouvelle partition Recovery (GPT)
cmd
diskpart
select disk 0
select volume C
shrink desired=1024 # 1 Go
create partition primary size=1024
format quick fs=NTFS label="Recovery"
assign letter=R
set id=de94bba4-06d1-4d40-a16a-bfd50179d6ac
gpt attributes=0x8000000000000001
exit
mkdir R:\Recovery\WindowsRE
copy C:\Windows\System32\Recovery\Winre.wim R:\Recovery\WindowsRE\Winre.wim
reagentc /disable
reagentc /setreimage /path R:\Recovery\WindowsRE /target C:\Windows
reagentc /enable
reagentc /info
# (Optionnel) retirer la lettre
diskpart
select volume R
remove letter=R
exit
MBR : utilisez
set id=27
pour typer la partition en « Recovery ».
Reconstruction complète de WinRE (dernier recours)
À employer si les pointeurs sont incohérents ou si l’image WinRE a dû être régénérée :
cmd
reagentc /disable
copy C:\Windows\System32\Recovery\Winre.wim X:\Recovery\WindowsRE\
reagentc /setreimage /path X:\Recovery\WindowsRE /target C:\Windows
reagentc /enable
reagentc /info
Remplacez X:
par la lettre temporaire de la partition de récupération.
Bonnes pratiques pour éviter la récidive
- Avant d’exécuter
reagentc
: vérifiez qu’aucune mise à jour ni installation de fonctionnalités n’est active. - Prévoyez une marge d’au moins 1 Go libre sur la partition de récupération pour les futures mises à jour WinRE.
- Tenez votre image WinRE cohérente avec l’OS : après des mises à jour majeures, passez un
reagentc /disable
puis/enable
pour la régénérer proprement si nécessaire.
Script d’audit rapide (optionnel)
Ce script PowerShell vérifie l’état de WinRE, tente une lecture journalisée et détecte un éventuel blocage prolongé (10 min).
powershell
$Log = "C:\Temp\reagent_audit.log"
New-Item -ItemType Directory -Path (Split-Path $Log) -ErrorAction SilentlyContinue | Out-Null
$job = Start-Job { reagentc /info /logpath C:\Temp\reagent_audit.log }
if (-not (Wait-Job $job -Timeout 600)) {
Write-Host "reagentc semble bloqué (10 min). Vérifiez l'activité de maintenance (TrustedInstaller/Windows Update)."
Stop-Job $job -Force | Out-Null
} else {
Receive-Job $job | Out-Null
Get-Content $Log | Select-String -SimpleMatch "another installation in progress","WinRE status","WinrePath"
}
Résultat final obtenu (retour d’expérience)
Après réinstallation de PowerShell ISE et surtout après avoir laissé le système terminer l’opération WinRE en arrière‑plan, reagentc
répond de nouveau normalement ; la gestion de la partition de récupération (vérification, redimensionnement, reconstruction) a pu être poursuivie sans autre incident.
Foire aux questions
Combien de temps un reagentc peut‑il rester « muet » sans que ce soit anormal ?
Entre 2 et 10 minutes est fréquent quand Windows termine une maintenance WinRE. Au‑delà de 15–20 minutes, investiguez les journaux et envisagez un redémarrage.
Puis‑je tuer TrustedInstaller
ou TiWorker.exe
pour « libérer » WinRE ?
Non recommandé. Ces processus gèrent l’intégrité des composants. Les interrompre peut corrompre l’image ou laisser des opérations en suspens.
DISM /revertpendingactions
est‑il sans risque ?
Il annule des opérations en attente. À utiliser avec discernement, de préférence après sauvegarde/snapshot. En mode online, la commande peut être refusée ; exécutez‑la alors hors ligne depuis WinRE.
Faut‑il toujours recréer la partition Recovery ?
Non. Le plus souvent, patienter et redémarrer suffisent. On ne touche à la partition que si l’espace manque ou si les pointeurs sont incohérents.
Checklist minute
- ✔ Mises à jour terminées et redémarrage effectué.
- ✔ Activité CPU/disk revenue à la normale.
- ✔
reagentc /disable
puis/enable
exécutés sans erreur. - ✔ Espace Recovery ≥ 1 Go libre.
- ✔ Chemin WinRE valide (
reagentc /info
+ entréeWinrePath
du Registre).
En résumé
- Le « gel » de
reagentc
n’était pas un plantage mais une attente de verrou WinRE déclenchée par une autre opération de servicing. - Attendre la fin des mises à jour, redémarrer, puis relancer
reagentc
résout la majorité des cas. - Si nécessaire, purgez les actions en attente et vérifiez l’intégrité des pointeurs/fichiers WinRE.
- En cas d’espace insuffisant, agrandissez ou recréez la partition Recovery en respectant les précautions (BitLocker, sauvegardes).