Precisa ativar o Install mode ao atualizar um Windows Server 2022 configurado como Terminal Server? Entenda a resposta curta, o porquê técnico e leve um runbook pronto para padronizar o seu processo de manutenção com segurança.
Contexto e dúvida do administrador
Em servidores de Remote Desktop Services (RDS), também conhecidos como Terminal Server, o comando change user /install
é parte clássica do ritual de instalação de aplicações multiutilizador. Surge, então, a pergunta: é necessário colocar o servidor em Install mode sempre que se aplicam as atualizações mensais do Windows (Patch Tuesday)?
Esta questão não é trivial, pois envolve como o Windows grava definições por utilizador e por máquina, como o mecanismo de manutenção (Servicing Stack) opera e como evitar derrapagens operacionais num host de sessões com utilizadores ativos.
Resposta objetiva
- Recomendação prática: Colocar o servidor em Install mode antes de instalar as atualizações mensais.
- Motivo: O modo garante que quaisquer alterações de registo e ficheiros sejam gravadas corretamente para todos os utilizadores, mantendo um procedimento único de “qualquer instalação”.
- Nota técnica: As atualizações do Windows, via Servicing Stack, normalmente não escrevem nas áreas de perfil do utilizador (
HKCU
) e, portanto, não exigem o Install mode para funcionarem. Ainda assim, habilitá-lo não causa prejuízo e elimina dúvidas em cenários de borda.
O que o Install mode realmente faz
Quando se executa change user /install
num servidor RDS/Terminal Server, o sistema entra num modo de compatibilidade em que gravações de registo que iriam para HKCU
e gravações em ficheiros INI no perfil do utilizador são redirecionadas para áreas globais. O objetivo é que as predefinições resultantes da instalação fiquem disponíveis para todos os utilizadores que abrirem sessões no futuro.
Comportamento | Install mode | Execute mode |
---|---|---|
Gravações de registo tipicamente em HKCU | Redirecionadas para áreas globais para partilha entre utilizadores | Persistem apenas no perfil do utilizador atual |
Ficheiros INI e caminhos de aplicação “antiga” | Mapeados para locais comuns do sistema | Gravados no perfil do utilizador ou pasta de trabalho |
Instalação de aplicações multiutilizador | Suportada e recomendada | Risco de configurações ficarem apenas para o instalador |
Atualizações do Windows | Seguro (boa prática padronizada) | Funciona na maioria dos casos, mas pode falhar em cenários raros |
Para regressar ao comportamento normal, usa-se change user /execute
. O estado atual pode ser verificado com change user /query
.
Por que as atualizações do Windows geralmente dispensam o Install mode
Os pacotes do Windows Update utilizam a Servicing Stack e o armazenamento de componentes do sistema (Component Store, WinSxS
), operando com contexto de máquina. Na prática, isso significa que atualizações de qualidade e de segurança não precisam de gravar configurações em HKCU
nem em ficheiros de perfil de utilizador.
Apesar disso, existem situações específicas em que ter o servidor em Install mode é benéfico:
- Componentes com comportamento de aplicação, como certas atualizações do .NET, pacotes que registam handlers por utilizador ou instaladores que criam subchaves em
HKCU
. - Drivers ou utilitários que, por design, fazem escrita per‑user durante a instalação.
- Ambientes rígidos ou regulados, onde a regra “toda instalação começa em Install mode” simplifica auditoria e reduz variabilidade entre hosts.
Benefícios de padronizar o procedimento
- Consistência operacional: uma só rotina para aplicações e atualizações reduz erros humanos.
- Redução de incidentes: evita casos em que uma configuração fica apenas para o administrador que aplicou o patch.
- Baixo custo: mudar de modo é imediato e sem efeitos colaterais quando não há sessões ativas.
Runbook recomendado de manutenção
Use o fluxo abaixo para aplicar Patch Tuesday em Windows Server 2022 com função de Session Host RDS mantendo segurança e previsibilidade. Os mesmos passos valem para aplicar pacotes .msu offline.
- Notificar e drenar sessões
- Avise os utilizadores com antecedência e defina uma janela de manutenção.
- Impeça novas ligações:
change logon /disable
(modo de drenagem). - Liste sessões ativas/desconectadas:
query user
ouquser
. - Desligue sessões remanescentes conforme política:
logoff <ID>
.
- Ativar Install mode
- Executar:
change user /install
- Confirmar estado:
change user /query
- Executar:
- Aplicar atualizações
- Windows Update via interface (Server with Desktop Experience) ou
sconfig
(Server Core). - Ou pacotes offline:
wusa C:\Patches\KBxxxxxxx.msu /quiet /norestart
.
- Windows Update via interface (Server with Desktop Experience) ou
- Reiniciar quando necessário
- Se um patch exigir reboot, execute-o imediatamente dentro da janela de manutenção.
- Reverter para Execute mode e reabrir logons
- Após o reboot (ou término da instalação):
change user /execute
. - Reautorizar novas ligações:
change logon /enable
. - Validar:
change user /query
deve indicar EXECUTE mode.
- Após o reboot (ou término da instalação):
Tabela de comandos úteis
Objetivo | Comando | Observações |
---|---|---|
Negar novas ligações | change logon /disable | Usado para drenar o host sem derrubar sessões existentes |
Permitir novas ligações | change logon /enable | Retorna o servidor ao estado normal de aceitação de sessões |
Ver sessões | query user ou quser | Exibe usuários, estado, tempo de inatividade e ID de sessão |
Terminar sessão | logoff <ID> | Utilize com cautela e com comunicação prévia |
Ativar Install mode | change user /install | Colhe alterações para todos os utilizadores |
Ativar Execute mode | change user /execute | Modo normal de execução de aplicações |
Mostrar modo atual | change user /query | Retorna application EXECUTE ou application INSTALL |
Aplicar pacote .msu | wusa KBxxxxxxx.msu /quiet /norestart | Para instalação offline e silenciosa |
Listar hotfixes | Get-HotFix | PowerShell; útil para auditoria pós-patch |
Script de automação em PowerShell
Exemplo simples para incorporar num maintenance task, pre/post script de MECM/ConfigMgr ou Scheduled Task. O objetivo é garantir a alternância de modo e o estado de logon.
# Executar em PowerShell elevado
function Invoke-RdsInstallMode {
param(
[switch]$DisableLogon,
[switch]$EnableLogonAfter
)
if (\$DisableLogon) { cmd.exe /c "change logon /disable" | Out-Null }
Ativa Install mode
cmd.exe /c "change user /install" | Out-Null
\ colocar a lógica de atualização:
Ex.: chamar sconfig, wusa, ou iniciar o ciclo de detecção do seu agente corporativo
Opcional: reiniciar se necessário
Restart-Computer -Force
Após a instalação/reboot, voltar para Execute
cmd.exe /c "change user /execute" | Out-Null
if (\$EnableLogonAfter) { cmd.exe /c "change logon /enable" | Out-Null }
Verificar estado final
cmd.exe /c "change user /query"
}
Invoke-RdsInstallMode -DisableLogon -EnableLogonAfter
Adapte o bloco do meio para a forma como a sua organização aciona updates (WSUS, MECM, script com wusa
, etc.).
Exemplo com pacotes offline
Quando se aplicam várias .msu de uma só vez, é útil processar uma pasta e registar resultados:
$patchFolder = "C:\Patches"
cmd /c "change logon /disable"
cmd /c "change user /install"
Get-ChildItem \$patchFolder -Filter \*.msu | ForEach-Object {
Write-Host "Instalando \$($\_.Name)..."
Start-Process wusa.exe -ArgumentList "`"$($_.FullName)`" /quiet /norestart" -Wait
}
Reinício, se necessário
if (Test-Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired") {
Restart-Computer -Force
}
Após o reboot, garanta o retorno aos estados normais
cmd /c "change user /execute"
cmd /c "change logon /enable"
Checklist de pré e pós atualização
Fase | Verificação | Como validar |
---|---|---|
Pré | Comunicação enviada aos utilizadores | Email, banners de sessão, aviso no portal |
Pré | Sem sessões críticas ativas | query user sem atividades de produção |
Pré | Novos logons bloqueados | change logon /disable aplicado |
Pré | Install mode ativo | change user /query retorna INSTALL |
Pós | Atualizações instaladas | Get-HotFix mostra KBs esperadas |
Pós | Execute mode ativo | change user /query retorna EXECUTE |
Pós | Logons liberados | change logon /enable aplicado |
Pós | Performance e erros | Testes de login e de aplicações chave |
Erros comuns e como evitar
- Confundir comandos:
change user
trata do Install/Execute mode.change logon
controla aceitação de novas sessões. São coisas diferentes. - Esquecer de reativar o Execute mode: aplicações podem herdar definições globalmente quando não era desejado. Valide sempre com
change user /query
. - Atualizar com sessões em aberto: risco de ficheiros bloqueados e experiência negativa ao utilizador. Drene e comunique.
- Aplicar patches fora de janela: planeie manutenção com hora certa e janelas recorrentes.
Integração com ferramentas corporativas
Quem usa WSUS, MECM/ConfigMgr ou outra plataforma de gestão pode incorporar o procedimento:
- Pré-instalação: tarefa que executa
change logon /disable
echange user /install
, comprime a janela para manutenção. - Instalação: aplicação de atualizações conforme o deployment já existente.
- Pós-instalação: retorno com
change user /execute
echange logon /enable
, mais verificação comGet-HotFix
.
Interações com perfis e contêineres
Em ambientes com FSLogix ou perfis de utilizador redirecionados, o Install mode continua útil. Ainda que os perfis residam em contêineres, o objetivo do modo é garantir que predefinições de aplicações (antes por utilizador) sejam estabelecidas de forma global durante a instalação. Não há conflito com a utilização de contêineres, pastas redirecionadas ou discos de perfil.
Validação pós-atualização
Depois de atualizar, execute validação básica:
- Verificar KBs:
Get-HotFix | Sort-Object InstalledOn -Descending
. - Conferir versão do SO:
systeminfo
ouwinver
para confirmar a build. - Testar aplicações-chave: garanta que abrem sem prompts de configuração inesperados em contas não administrativas.
- Confirmar modos:
change user /query
deve indicar EXECUTE;change logon /enable
deve permitir novas sessões.
Perguntas frequentes
É obrigatório ativar o Install mode para cada Patch Tuesday?
Não. Tecnicamente, a pilha de manutenção do Windows trabalha ao nível do sistema. Contudo, recomenda-se ativá-lo por padronização e para cobrir componentes com comportamento de “instalador de aplicação”.
E se eu esquecer de voltar para Execute mode?
As novas instalações poderão gravar predefinições globalmente sem intenção. Crie uma verificação pós-instalação e um guardrail via script que execute change user /execute
após reinícios.
O Install mode impacta o desempenho?
Não de forma relevante. A alternância de modo é pontual e só deve ocorrer quando não há sessões em uso.
Tenho uma farm com vários Session Hosts.
Aplique o mesmo procedimento por host, utilizando drenagem (change logon /disable
) para deslocar sessões ativas e manutenção por rotação.
E no Server Core?
Os comandos são idênticos. Para atualizar, utilize sconfig
ou pacotes .msu. A alternância de modo é a mesma via change user
.
Resumo estratégico
Para Windows Server 2022 atuando como Terminal Server/RDS Session Host, a estratégia vencedora é simples: trate qualquer instalação — aplicação ou patch — com o mesmo ritual operacional. Ative Install mode antes, aplique as atualizações, reinicie se preciso e retorne para Execute mode, liberando novamente os logons. Ainda que a maioria dos patches não dependa tecnicamente deste modo, adotá-lo como padrão evita exceções, melhora a previsibilidade e fortalece a governança da sua plataforma de virtualização de aplicações.