Windows Server 2022 RDS : faut‑il passer en mode Install pour les mises à jour mensuelles ?

Faut‑il basculer un hôte de session RDS Windows Server 2022 en mode Install pour Patch Tuesday ? Voici une réponse claire, une procédure pas‑à‑pas et des bonnes pratiques pour patcher sans gêner les utilisateurs et sans laisser le serveur dans un état risqué.

Sommaire

Vue d’ensemble de la question

La question revient souvent en production : faut‑il placer un serveur Windows Server 2022 configuré en hôte de session RDS (ex‑Terminal Server) en mode Install lors de l’application des mises à jour mensuelles de Windows ? Ou bien ce mode ne concerne‑t‑il que l’installation et la mise à jour d’applications ? Le contexte précisé est que les mises à jour sont déployées quand aucun utilisateur n’est connecté.

TL;DR : pour les mises à jour Windows mensuelles, le mode Install n’est en général pas requis, car les correctifs sont appliqués par des services système. La priorité opérationnelle est de drainer/bloquer les connexions, évincer les sessions restantes et redémarrer quand c’est demandé. En revanche, passez en mode Install pour l’installation ou la mise à jour d’applications qui écrivent des paramètres par utilisateur.

Pourquoi cette confusion persiste

Historiquement, le mode Install des serveurs de terminaux sert à capturer et rediriger certaines écritures réalisées par un programme d’installation (fichiers et clés de registre supposés « par utilisateur ») vers des emplacements communs afin que tous les futurs utilisateurs bénéficient des paramètres et composants nécessaires. Certains administrateurs ont étendu ce réflexe aux mises à jour du système par précaution.

Or, le mécanisme de mise à jour de Windows Server s’exécute sous contexte SYSTEM et manipule des emplacements machine‑wide. Il n’a pas besoin des redirections offertes par le mode Install. D’où la recommandation moderne : ne pas basculer en mode Install pour patcher l’OS, et se concentrer sur le cycle de maintenance (drain, patch, reboot, réouverture).

Comprendre le mode Install vs Execute

AspectMode InstallMode Execute
Usage prévuInstaller/mettre à jour des applications sur un RDSUtilisation normale en production (exécution des applis par les utilisateurs)
Écritures registreRedirige certaines écritures destinées à HKCU vers une zone machine pour en faire des défauts applicables aux futurs profilsÉcritures usuelles dans HKCU isolées par session/utilisateur
Écritures fichiersCompatibilité appli : redirections de chemins « par utilisateur » vers All Users / profils par défautFichiers créés dans les profils des utilisateurs actifs
Contexte de patch WindowsInutile dans la plupart des casNormal et recommandé
Risque si oubliéÉlevé : laisser le serveur en Install peut polluer le profil par défaut et entraîner des anomalies pour les sessions futuresFaible : comportement attendu

Position claire et actionnable

  • Mises à jour Windows mensuelles (WSUS/SCCM/WUfB/Windows Update) : ne basculez pas le serveur en mode Install. Faites le drain des sessions, appliquez les correctifs, puis redémarrez.
  • Installation/mise à jour d’applications (setup .exe, MSI non‑MSIcompliant, applis héritées écrivant dans HKCU/%APPDATA%) : oui, passez en mode Install pendant l’installation, puis revenez impérativement en mode Execute.

Procédure recommandée pour les patchs mensuels sur un hôte RDS

La séquence ci‑dessous minimise l’impact pour les utilisateurs et réduit les incidents post‑patch.

Étapes en ligne de commande

  1. Bloquer les nouvelles connexions (ou drainer les reconnexions uniquement)
change logon /drain     & rem Autorise les reconnexions seulement
rem ou
change logon /disable   & rem Bloque toute nouvelle connexion
  1. Vérifier/évincer les sessions restantes
query user              & rem Liste les sessions (ID dans la 2e colonne)
logoff <ID>             & rem Déconnecte proprement une session
  1. Appliquer les mises à jour (WSUS/SCCM/WUfB/Windows Update)
rem WSUS/SCCM : laisser le client piloter le scan/install
rem Windows Update (déploiement manuel) : sconfig, ou UI graphique
  1. Redémarrer dès que demandé (ou de façon contrôlée en fin de fenêtre)
shutdown /r /t 0 /d p:2:17 /c "Redémarrage post‑patch"
  1. Réautoriser les connexions
change logon /enable

Variante PowerShell (optionnelle)

Sans dépendre d’outils tiers, vous pouvez piloter la maintenance en PowerShell. Exemple :

# Bloquer les nouvelles connexions (équivalent)
Start-Process -FilePath "cmd.exe" -ArgumentList "/c change logon /disable" -Wait

# Lister les sessions et forcer la fermeture si nécessaire

quser

# puis : logoff \

# Déclencher un scan Windows Update (client moderne)

# Remarque : USOClient peut être restreint selon la stratégie ; exécuter en SYSTEM si nécessaire.

Start-Process -FilePath "usoclient.exe" -ArgumentList "StartScan" -Verb RunAs
Start-Process -FilePath "usoclient.exe" -ArgumentList "StartInstall" -Verb RunAs

# Redémarrer si une relance est requise

Restart-Computer -Force

# Puis réautoriser

Start-Process -FilePath "cmd.exe" -ArgumentList "/c change logon /enable" -Wait 

Astuce : si vous utilisez le module PSWindowsUpdate en atelier, bâtissez un script standardisé (Get-WindowsUpdate, Install-WindowsUpdate -AcceptAll -IgnoreReboot) et cadrez son usage via une GPO d’exécution de scripts signés.

Quand utiliser réellement le mode Install

Servez‑vous du mode Install lors d’installations d’applications qui écrivent des paramètres par utilisateur au moment de l’installation ou qui ne respectent pas les bonnes pratiques MSI.

change user /install
rem Installer/mettre à jour l’application
change user /execute

Contrôler le mode courant :

change user /query

Signaux qui justifient le mode Install pendant l’installation applicative :

  • L’assistant crée des fichiers sous %APPDATA%, %LOCALAPPDATA% ou %USERPROFILE%.
  • Des clés de configuration sont écrites dans HKCU\Software au moment du setup.
  • L’éditeur précise explicitement une procédure RDS/citrix avec un « install mode ».

Scénarios particuliers et nuances utiles

  • Serveurs membres d’une ferme RDS derrière un broker : drainer les nœuds un par un, patcher, redémarrer, puis les remettre en service avant de passer au suivant.
  • Profils itinérants/FSLogix : pas d’impact particulier sur la nécessité du mode Install pour Windows Update. En revanche, gardez le serveur en drain pour éviter l’attachement/détachement fréquent des containers pendant les patchs.
  • Agents résidents (EDR, monitoring, sauvegarde) : vérifiez leurs états après redémarrage (service running, télémétrie OK) dans votre check post‑patch.
  • Applications publiées en RemoteApp : si vous mettez à jour l’application elle‑même, oui au mode Install pendant l’opération, même si le poste n’accueille pas de sessions bureautiques complètes.

Procédure « durcie » de patch mensuel

ÉtapeObjectifCommande/ActionCritère de succès
Pré‑maintenancePrévenir, planifier, sauvegarderNotification aux utilisateurs, point de restauration/snapshot VM, sauvegarde système/étatCommunications envoyées, sauvegarde vérifiée
DrainEmpêcher les nouvelles sessionschange logon /drain ou /disableSeules les reconnexions, ou aucune connexion
ÉvictionsFermer les sessions activesquery user, logoff <ID>Aucune session utilisateur
PatchInstaller les mises à jourWSUS/SCCM/WUfB/Windows UpdateInstallations Success / Pending reboot
RedémarrageFinaliser l’installationshutdown /r /t 0 ou Restart-ComputerRetour au logon screen
Remise en serviceOuvrir les accèschange logon /enableConnexions acceptées
VérificationsContrôles de santéÉvénements, services critiques, charge CPU/RAM, test de logonOK opérationnel

Pièges fréquents à éviter

  • Oublier de revenir en mode Execute après une installation d’application : cela peut introduire des paramètres inattendus pour tous les nouveaux profils.
  • Laisser le serveur en /disable après la fenêtre de maintenance : vous ne verrez que « Connexion refusée » côté utilisateurs.
  • Patcher avec des sessions ouvertes : risques de fichiers verrouillés, profils corrompus et redémarrage forcé en pleine journée.
  • Ignorer la demande de redémarrage : certains correctifs ne sont effectifs qu’après reboot (et un redémarrage différé créé de la dette technique).

Vérifications rapides post‑patch

  • Le serveur est‑il bien en mode Execute ? change user /query.
  • Les connexions RDS sont‑elles réautorisées ? change logon /enable.
  • Y a‑t‑il un redémarrage en attente ? Rechercher une clé RebootPending (ou simplement rebooter de manière proactive à la fin de la fenêtre).
  • Les services critiques (broker, impression, EDR, monitoring) sont‑ils running ?
  • Un test utilisateur réalise‑t‑il sans erreur l’ouverture de session et l’ouverture des applications publiées ?

Exemples de scripts de maintenance

Script batch minimaliste

@echo off
setlocal enabledelayedexpansion

echo \[1/5] Drain des connexions...
change logon /disable

echo \[2/5] Eviction des sessions actives...
for /f "skip=1 tokens=3" %%i in ('query user ^| findstr /r "^\[ \

Boucle de pilotage PowerShell « propre »

# 1. Bloquer les nouvelles connexions
Start-Process cmd -ArgumentList "/c change logon /disable" -Wait

# 2. Evincer les sessions (a confirmer selon vos procedures internes)

quser

# logoff \

# 3. Déclencher le cycle de mise à jour si vous pilotez localement

Start-Process usoclient.exe -ArgumentList "StartScan" -Wait
Start-Process usoclient.exe -ArgumentList "StartInstall" -Wait

# 4. Redémarrer si nécessaire

if (Test-Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\RebootPending") {
Restart-Computer -Force
}

# 5. Réautoriser les connexions à la remontée

Start-Process cmd -ArgumentList "/c change logon /enable" -Wait 

Décision rapide

ScénarioMode Install requis ?Remarques
Mises à jour Windows mensuelles (cumulatives, .NET, sécurité)Non, en général inutileFaites le drain, appliquez, redémarrez, réautorisez
Installation/mise à jour d’une application legacyOuichange user /install → installer → /execute
MSI correctement packagé (all‑users)Souvent nonSelon le packaging ; vérifiez la doc éditeur
Scripts qui modifient HKCU pendant l’installationOuiGarantir des defaults pour tous les futurs profils

FAQ express

Et si je bascule quand même en mode Install pour patcher l’OS ?
Ce n’est pas utile ; cela ajoute un risque d’oubli de retour en Execute et peut « salir » le profil par défaut. Si votre procédure interne l’impose, assurez‑vous qu’aucun utilisateur n’est connecté, appliquez les patchs puis revenez immédiatement en Execute.

Dois‑je drainer si je planifie en pleine nuit ?
Oui, car des sessions déconnectées peuvent subsister. Le drain + eviction garantit des fichiers non verrouillés et un redémarrage propre.

Qu’en est‑il des impressions et redirections ?
Les patchs peuvent redémarrer le spooler ou actualiser des composants RDS. D’où l’intérêt de patcher sans utilisateurs et de valider un test d’impression après redémarrage.

Conclusion

Le mode Install est un outil précieux… pour ce pourquoi il a été conçu : l’installation d’applications sur des hôtes RDS/Terminal Server. Pour les mises à jour Windows mensuelles sur Windows Server 2022, il est inutile dans la plupart des cas. Ordonnez plutôt votre fenêtre de maintenance autour d’un drain propre, d’un patch contrôlé, d’un redémarrage et d’une remise en service explicite. Cette approche réduit la complexité, diminue les erreurs humaines et stabilise vos plateformes RDS au quotidien.


Annexe : rappel des commandes utiles

  • change user /install — bascule en mode Install (applications)
  • change user /execute — retour au mode normal
  • change user /query — affiche le mode courant
  • change logon /drain — nouvelles connexions bloquées, reconnexions autorisées
  • change logon /disable — bloque toute nouvelle connexion
  • change logon /enable — réautorise les connexions
  • query user — liste les sessions (IDs)
  • logoff <ID> — met fin à une session de façon contrôlée
  • shutdown /r /t 0 — redémarrage immédiat

Modèle de communication vers les utilisateurs

Exemple de message à envoyer 24–48 h avant la fenêtre :

Maintenance RDS – Windows Server 2022
Une maintenance de nos hôtes RDS aura lieu le [date] de [heure] à [heure]. Les nouvelles connexions seront temporairement bloquées et les sessions restantes évincées avant redémarrage. Merci de sauvegarder vos travaux et de vous déconnecter avant [heure].


Résumé opérationnel en une ligne

Mises à jour Windows mensuelles sur RDS : Pas de mode Installdrainpatchrebootenable.

Sommaire