O servidor avisou que vai reiniciar para concluir atualizações, mas a interface mostra erro e o botão de agendar sumiu? Este guia explica quando o Windows Server reinicia, por que o alerta de falha aparece e como reagendar com segurança via GPO, CMD, PowerShell e Agendador.
Visão geral do cenário
Após instalar atualizações no Windows Server, foi exibido um reinício agendado para uma data futura (por exemplo, “daqui a 2 dias”). Ao mesmo tempo, a página de Windows Update pode mostrar a mensagem “houve um problema ao instalar algumas atualizações”. E, em alguns casos, a opção Agendar reinício deixa de aparecer.
Neste artigo, você encontra respostas diretas, procedimentos de correção e formas confiáveis de controlar o reinício — sem surpresas em produção.
Resposta direta e prática
Comportamento do reinício agendado
- Horário agendado tem prioridade. Se você definiu explicitamente um horário em Agendar reinício, o sistema deve reiniciar nesse horário e não antes, mesmo que existam “Horas ativas”.
- Exceções controladas por política. Políticas de Grupo (GPO) ou prazos de reinício (deadlines) definidos pela TI podem forçar reinício antes/depois do previsto. Verifique especialmente:
- Computer Configuration → Administrative Templates → Windows Update → Manage end user experience:
- Always automatically restart at the scheduled time
- Specify deadline before auto-restart for update installation (ou “Specify deadlines for automatic updates and restarts”)
- No auto-restart with logged on users for scheduled automatic updates installations
- Turn off auto-restart for updates during active hours
- Computer Configuration → Administrative Templates → Windows Update → Manage end user experience:
- WSUS/MECM/WUfB podem alterar a lógica. Se o servidor é gerenciado por WSUS, Microsoft Endpoint Configuration Manager (SCCM/MECM) ou Windows Update for Business, as janelas de manutenção e prazos definidos centralmente prevalecem.
Por que aparece “houve um problema ao instalar…” e ainda assim o sistema pede reinício
- Instalação parcial. Parte das atualizações foi aplicada e requer reinício para concluir; outras falharam naquele ciclo. Após o reinício, o Windows normalmente finaliza o que falta e tenta novamente as que falharam.
- Dependências e ordem. Algumas KBs exigem reinício antes de permitir que outras sejam instaladas. É comum ver “falha” temporária que se resolve depois do reboot.
- Ambiente do servidor. Falhas também podem ocorrer por falta de espaço em disco, serviços bloqueados, antivírus, drivers ou pacotes supersedidos.
Como verificar e corrigir falhas de atualização (essencial)
- Histórico: Configurações → Atualização do Windows → Histórico de atualizações (anote códigos/KBs com falha).
- Event Viewer: Applications and Services Logs → Microsoft → Windows → WindowsUpdateClient → Operational (sucessos: Evento 19; falhas: Evento 20). Também vale conferir Microsoft-Windows-UpdateOrchestrator/Operational para agendamentos e reinícios.
- Espaço em disco: mantenha ao menos 5–10 GB livres na unidade do sistema para evitar erros por falta de espaço.
- Repor componentes do Windows Update:
net stop wuauserv
net stop bits
ren %systemroot%\SoftwareDistribution SoftwareDistribution.old
ren %systemroot%\System32\catroot2 catroot2.old
net start bits
net start wuauserv
Opção ampliada (incluindo serviços adicionais, quando presentes):
net stop wuauserv
net stop cryptsvc
net stop bits
net stop msiserver
ren %systemroot%\SoftwareDistribution SoftwareDistribution.old
ren %systemroot%\System32\catroot2 catroot2.old
net start msiserver
net start bits
net start cryptsvc
net start wuauserv
Depois, procure atualizações novamente e verifique o histórico.
Como reagendar o reinício quando a opção sumiu
A opção Agendar reinício só aparece quando há reinício pendente gerenciado pelo Windows Update e a política permite o agendamento. Se o botão sumiu, use um dos caminhos abaixo.
Via interface (quando disponível)
Configurações → Atualização do Windows → Opções de reinício/Agendar reinício → habilite Agendar um horário e defina data/hora.
Via linha de comando (funciona em todas as edições)
- Agendar um reinício para daqui a X segundos (ex.: 2 horas = 7200 s):
shutdown /r /t 7200 /c "Reinicio programado para concluir atualizações"
- Cancelar um agendamento (feito com
shutdown
):
shutdown /a
- Reiniciar imediatamente:
shutdown /r /t 0
Observação: shutdown /a
cancela apenas contagens regressivas ativas do shutdown.exe
. Se o reinício está agendado pelo Update Orchestrator ou por política, ajuste a política, reprograme via tarefa ou reinicie manualmente no horário desejado.
Agendador de Tarefas (horário exato com conta do sistema)
Exemplo: reiniciar às 23:00 de hoje:
schtasks /Create /SC ONCE /TN "Reinicio_Atualizacoes" /TR "shutdown.exe /r /t 0 /f" /ST 23:00 /RU SYSTEM
Vantagem: você escolhe dia/hora precisos sem depender da UI do Windows Update.
PowerShell: agendar com tarefa
$action = New-ScheduledTaskAction -Execute 'powershell.exe' -Argument '-NoProfile -WindowStyle Hidden -Command "Restart-Computer -Force"'
$trigger = New-ScheduledTaskTrigger -Once -At (Get-Date "23:00")
Register-ScheduledTask -TaskName 'Reinicio_Atualizacoes' -Action $action -Trigger $trigger -User 'SYSTEM' -RunLevel Highest
Server Core: usando o SConfig
No Server Core, abra sconfig
e use as opções de Windows Update para verificar pendências e aplicar/reiniciar. Se precisar de controle fino de horário, prefira shutdown
/schtasks
ou a GPO.
Padronização via Política de Grupo (recomendado para servidores)
Você pode forçar um comportamento consistente em todos os servidores:
Política | Efeito | Recomendação para servidor |
---|---|---|
Always automatically restart at the scheduled time | Garante reinício no horário configurado, ignorando adiamentos do usuário. | Habilitar em conjunto com janelas de manutenção. |
No auto-restart with logged on users… | Evita reinício automático se houver usuários logados. | Habilitar em ambientes com administração frequente remota; avaliar impacto. |
Turn off auto-restart during active hours | Impede reinício dentro das Horas Ativas. | Definir Horas Ativas coerentes; para servidores, geralmente madrugada fora de expediente. |
Specify deadline before auto-restart… | Define prazo máximo para reiniciar após instalar updates. | Usar prazos alinhados à política de segurança e janela de manutenção. |
Checklist rápido para tomar a decisão
- Confirme se há reinício pendente: verifique na UI do Windows Update e/ou com o registro:
if (Test-Path 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired') { 'Reinicio pendente' } else { 'Sem reinicio pendente' }
- Verifique políticas ativas:
gpresult /h C:\Temp\gp.html
e revise as entradas de Windows Update. - Garanta janela de manutenção: evite reiniciar em horário crítico de produção.
- Reagende conforme necessidade: via GUI,
shutdown
,schtasks
ou GPO. - Após o reboot: valide o Histórico e os logs de evento para confirmar sucesso.
Diagnóstico aprofundado e validações
Eventos e logs úteis
Origem | Caminho | Eventos comuns | Uso |
---|---|---|---|
WindowsUpdateClient | Applications and Services Logs → Microsoft → Windows → WindowsUpdateClient → Operational | 19 (instalado), 20 (falha) | Avaliar sucesso/falha por KB. |
Update Orchestrator | Microsoft-Windows-UpdateOrchestrator/Operational | Agendamentos de reboot, etapas de orquestração | Ver se o sistema agendou/alterou reinício. |
System | Windows Logs → System | 1074 (reinício iniciado), 6006/6008 | Quem reiniciou, quando e o motivo. |
CBS / DISM | C:\Windows\Logs\CBS\CBS.log e C:\Windows\Logs\DISM\dism.log | Instalação de pacotes e manutenção | Falhas de componente ou corrupção. |
Conferir as tarefas do Update Orchestrator
Get-ScheduledTask -TaskPath '\Microsoft\Windows\UpdateOrchestrator\' |
Where-Object {$_.TaskName -match 'Reboot'} |
Get-ScheduledTaskInfo
Verifique Next Run Time e o Last Run Result para confirmar se há reinício programado pela própria orquestração do Windows Update.
Checar KBs instaladas e pendentes
# KBs instaladas recentemente
Get-HotFix | Sort-Object InstalledOn -Descending | Select-Object -First 15
Histórico do Windows Update (quando disponível)
Get-WindowsUpdateLog # compila logs de ETL (Windows Server 2016+) </code></pre>
<h3>Reparo do sistema antes de tentar novamente</h3>
<p>Se os erros persistirem mesmo após reiniciar:</p>
<pre><code>sfc /scannow
DISM /Online /Cleanup-Image /RestoreHealth
</code></pre>
<h3>Forçar nova detecção/instalação (uso criterioso)</h3>
<p>Comandos internos (podem variar por versão):</p>
<pre><code>usoclient StartScan
usoclient StartInstall
usoclient RestartDevice
</code></pre>
<p><em>Observação:</em> em versões mais novas, alguns comandos <code>wuauclt</code>/<code>usoclient</code> são restritos e podem não produzir saída visível. Use-os com cautela e prefira o fluxo padrão via UI/WSUS/MECM.</p>
<h2>Quando o “Agendar reinício” desaparece</h2>
<p>Motivos comuns e o que fazer:</p>
<table>
<thead>
<tr>
<th>Causa provável</th>
<th>Como confirmar</th>
<th>Correção</th>
</tr>
</thead>
<tbody>
<tr>
<td>Não há mais reinício pendente</td>
<td>Chave <code>RebootRequired</code> não existe; UI indica “Você está atualizado”.</td>
<td>Nada a fazer; reinício não é mais necessário.</td>
</tr>
<tr>
<td>GPO desabilita o agendamento</td>
<td><code>gpresult /h</code> mostra políticas de experiência do usuário do Windows Update.</td>
<td>Alinhar a política; use <code>schtasks</code> para agendamento manual.</td>
</tr>
<tr>
<td>WSUS/MECM controla o restart</td>
<td>Cliente aponta para WSUS; tarefas do Orchestrator mostram <em>Next Run</em>.</td>
<td>Respeitar janela central; se necessário, coordenar e reiniciar manualmente.</td>
</tr>
<tr>
<td>UI em Server Core/sem shell</td>
<td>Sem página de Configurações completa.</td>
<td>Usar <code>sconfig</code>, <code>shutdown</code> e <code>schtasks</code>.</td>
</tr>
</tbody>
</table>
<h2>Boas práticas para servidores</h2>
<ul>
<li><strong>Janela de manutenção definida:</strong> padronize um horário (ex.: madrugada local) e centralize via GPO/WSUS/MECM.</li>
<li><strong>Evite impacto em sessões administrativas:</strong> se conveniente, habilite “No auto-restart with logged on users…”.</li>
<li><strong>Clusters e serviços críticos:</strong> em <em>Failover Clustering</em>, use <code>Suspend-ClusterNode -Drain</code> para esvaziar cargas antes do reboot e <code>Resume-ClusterNode</code> depois.</li>
<li><strong>Validação pós-reboot:</strong> confira <em>Histórico</em>, eventos 19/20 e o motivo do reinício (evento 1074). Teste aplicações e monitore métricas.</li>
<li><strong>Capacidade de armazenamento:</strong> mantenha espaço suficiente na unidade do SO; limpe arquivos temporários e logs antigos.</li>
</ul>
<h2>Procedimentos prontos para uso</h2>
<h3>Fluxo A — tudo pronto para reiniciar às 23:00 de hoje</h3>
<ol>
<li>Confirme pendência: <code>Test-Path HKLM:\...\RebootRequired</code>.</li>
<li>Agende:
<pre><code>schtasks /Create /SC ONCE /TN "Reinicio_Atualizacoes" /TR "shutdown.exe /r /t 0 /f" /ST 23:00 /RU SYSTEM</code></pre>
</li>
<li>Notifique stakeholders e registre a mudança.</li>
<li>Após o reboot, valide eventos e histórico.</li>
</ol>
<h3>Fluxo B — reagendar porque o botão sumiu</h3>
<ol>
<li>Rode <code>gpresult /h</code> e confirme se GPO removeu a opção.</li>
<li>Se existir reinício pendente, reprograme com <code>shutdown /r /t</code> ou <code>schtasks</code>.</li>
<li>Se não houver pendência, force detecção (<code>usoclient StartScan</code>) ou aguarde a próxima janela.</li>
</ol>
<h3>Fluxo C — falha de atualização persistente</h3>
<ol>
<li>Libere espaço em disco e desconecte mídia ISO.</li>
<li>Repare componentes:
<pre><code>sfc /scannow
DISM /Online /Cleanup-Image /RestoreHealth
Reponha componentes do Windows Update (script acima).
Instale novamente e reinicie na janela segura.
Referência rápida de políticas e configurações
Área | Opção | Valor sugerido | Observações |
---|---|---|---|
Horas Ativas | Início/Fim | Fora do expediente | Em servidores, defina madrugada para evitar reinícios durante o dia. |
Prazo de reinício | Deadline | 24–72 horas | Balanceie segurança vs. impacto operacional. |
Experiência do usuário | No auto-restart with logged on users… | Habilitar (quando aplicável) | Útil quando há admin conectado fazendo manutenção. |
Reinício programado | Always automatically restart at the scheduled time | Habilitar | Crava o reinício na janela definida. |
Comandos úteis (copiar e colar)
Agendar/cancelar reinício
shutdown /r /t 7200 /c "Reinicio programado para concluir atualizações" # em 2 horas
shutdown /a # cancelar contagem
shutdown /r /t 0 # imediato
Agendar tarefa às 23:00 (conta do sistema)
schtasks /Create /SC ONCE /TN "Reinicio_Atualizacoes" /TR "shutdown.exe /r /t 0 /f" /ST 23:00 /RU SYSTEM
PowerShell — tarefa agendada para reiniciar
$action = New-ScheduledTaskAction -Execute 'powershell.exe' -Argument '-NoProfile -WindowStyle Hidden -Command "Restart-Computer -Force"'
$trigger = New-ScheduledTaskTrigger -Once -At (Get-Date "23:00")
Register-ScheduledTask -TaskName 'Reinicio_Atualizacoes' -Action $action -Trigger $trigger -User 'SYSTEM' -RunLevel Highest
Listar KBs instaladas e verificar pendência
Get-HotFix | Sort-Object InstalledOn -Descending | Select-Object -First 20
if (Test-Path 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired') { 'Reinicio pendente' } else { 'Sem reinicio pendente' }
Reparar componentes
sfc /scannow
DISM /Online /Cleanup-Image /RestoreHealth
Resetar componentes do Windows Update
net stop wuauserv
net stop cryptsvc
net stop bits
net stop msiserver
ren %systemroot%\SoftwareDistribution SoftwareDistribution.old
ren %systemroot%\System32\catroot2 catroot2.old
net start msiserver
net start bits
net start cryptsvc
net start wuauserv
Checar agendamentos do Update Orchestrator
Get-ScheduledTask -TaskPath '\Microsoft\Windows\UpdateOrchestrator\' | Where-Object {$_.TaskName -match 'Reboot'} | Get-ScheduledTaskInfo
Desinstalar uma KB específica (se necessário)
wusa /uninstall /kb:1234567 /quiet /norestart
Perguntas rápidas (FAQ)
O servidor vai reiniciar exatamente no horário agendado ou “automaticamente fora das horas ativas”?
Se você definiu um horário em Agendar reinício, esse horário é o que vale. Apenas políticas (GPO/deadline) podem antecipar/postergar. “Horas ativas” atuam para evitar reinícios não agendados durante o expediente.
Por que aparece “houve um problema ao instalar algumas atualizações” mesmo com o pedido de reinício?
Porque houve instalação parcial: algumas KBs exigem reinício para concluir; outras falharam e serão tentadas depois. Após o reboot, verifique o histórico e os eventos 19 (sucesso) e 20 (falha).
Como reagendar se o botão “Agendar reinício” sumiu?
Use shutdown /r /t
, crie uma tarefa com schtasks
ou padronize pela GPO. Em Server Core, use sconfig
para o básico e complemente com CMD/PowerShell.
Exemplo prático completo
Contexto: Atualizações aplicadas hoje, mensagem de falha parcial, reinício “em 2 dias”, janela de manutenção às 23:00.
- Confirme pendência:
if (Test-Path 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired') { 'Reinicio pendente' }
- Confira políticas:
gpresult /h C:\Temp\gp.html
- Agende reinício para a janela:
schtasks /Create /SC ONCE /TN "Reinicio_Atualizacoes" /TR "shutdown.exe /r /t 0 /f" /ST 23:00 /RU SYSTEM
- Após reiniciar, valide:
- WindowsUpdateClient/Operational: eventos 19/20;
- System: evento 1074 com motivo “Windows Update”.
- Se houver falha persistente, aplique:
sfc /scannow DISM /Online /Cleanup-Image /RestoreHealth
e refaça a busca por updates.
Resumo final
- O servidor reinicia no horário que você agendou, salvo quando GPOs ou prazos corporativos determinam diferente.
- A mensagem de erro indica falha parcial: parte precisa de reinício; o restante será tentado após o reboot.
- Para reagendar, use a UI quando disponível; se Agendar reinício sumiu, utilize
shutdown /r /t
,schtasks
ou GPO para controlar o horário com precisão. - Valide com logs (eventos 19/20, 1074) e mantenha práticas de manutenção (janela, espaço em disco, cluster-aware).