Se a KB5042881 volta a aparecer no Windows Update do Windows Server 2022 e a remoção falha com o erro 0x80073701, siga este guia prático e seguro para diagnosticar, corrigir a Store de Componentes e normalizar o ciclo de atualização sem reinstalar o sistema.
Visão geral do problema
Administradores têm relatado o seguinte comportamento específico ao lidar com a KB5042881 – 2024‑09 Cumulative Update no Windows Server 2022 (Desktop Experience ou Server Core):
- Sintoma: o Windows Update oferece repetidamente a mesma atualização, mesmo após a instalação ser reportada como concluída. Uma nova tentativa resulta no erro 0x80073701 (ERRORSXSASSEMBLY_MISSING), sugerindo assemblies ausentes na WinSxS.
- Contradição: ao tentar desinstalar, o WUSA informa que a atualização não está instalada e ela não consta no Histórico de Atualizações.
Diagnóstico provável: inconsistência entre o registro do pacote na Component-Based Servicing (CBS/WinSxS) e os metadados do Windows Update. Isso pode ocorrer por corrupção de componentes, cache do Windows Update danificado ou dependências pendentes.
Quem é afetado e riscos
- Ambientes afetados: servidores físicos ou virtuais, membros de domínio, controladores de domínio e nós de cluster. O problema pode se manifestar tanto com Windows Update direto quanto via WSUS/SCCM/MECM.
- Riscos: remover pacotes incorretos pode impactar funções de servidor (AD DS, IIS, Hyper‑V, RDS). Em produção, faça backup e, se possível, snapshot antes de alterações de servicing.
Checklist rápido de diagnóstico
O que verificar | Comando ou Ação | O que esperar |
---|---|---|
Saúde do sistema de arquivos | sfc /scannow | Corrige DLLs básicas; registra erros no CBS.log. |
Saúde da imagem | DISM /Online /Cleanup-Image /CheckHealth | Detecta corrupção rapidamente (não repara). |
Corrupção detalhada | DISM /Online /Cleanup-Image /ScanHealth | Relatório aprofundado sobre o CBS/WinSxS. |
Tentativa de reparo | DISM /Online /Cleanup-Image /RestoreHealth | Repara componentes usando a origem padrão. |
Pacotes instalados/pendentes | DISM /Online /Get-Packages /Format:Table | Identifica a presença (ou não) da KB5042881. |
Cache do Windows Update | Limpar SoftwareDistribution e catroot2 | Evita reapresentação indevida da KB. |
Logs de causa-raiz | Revisar C:\Windows\Logs\CBS\CBS.log | Entradas de assemblies ausentes e pacotes em estado “Staged/Pending”. |
Resumo das soluções práticas
Execute as etapas na ordem a seguir. Elas resolvem a maioria dos casos de erro 0x80073701 com a KB5042881:
Etapa | Objetivo | Comandos / Ações principais | Observações |
---|---|---|---|
Solução de problemas do Windows Update | Corrigir problemas simples automaticamente. | Definições → Solução de problemas → Windows Update (se disponível) | No Server Core, este assistente pode não estar presente. |
DISM – Reparar imagem | Eliminar corrupção que causa 0x80073701. | DISM /Online /Cleanup-Image /CheckHealth → /ScanHealth → /RestoreHealth | Execute em PowerShell ou Prompt elevado. |
Verificar atualizações pendentes | Evitar conflitos de dependência. | Instalar todas as atualizações pendentes antes de atuar na KB5042881. | Inclui reinícios pendentes (Reboot pending). |
Remoção manual via WUSA | Tentar desinstalar se o pacote estiver registado. | wusa /uninstall /kb:5042881 /quiet /norestart | Se não estiver registado, o WUSA informará que não está instalado. |
DISM para listar/remover pacote | Quando o WUSA não localiza a KB. | DISM /Online /Get-Packages | findstr 5042881 → DISM /Online /Remove-Package /PackageName:<nome> | Usar o Package Identity exato retornado pelo DISM. |
Reinicializar componentes do Windows Update | Limpar caches e estado de metadados. | Parar serviços → renomear pastas → iniciar serviços (script abaixo) | Recomendado após erros repetidos ou reoffer. |
Último recurso: reinstalação limpa | Resolver corrupção irrecuperável. | Backup/snapshot → mídia de instalação do Windows Server 2022 | Considere in-place upgrade antes de clean install. |
Fluxo detalhado de correção
Preparação e segurança
- Abra um Prompt de Comando ou PowerShell como Administrador.
- Certifique-se de ter backup recente e janelas de manutenção aprovadas. Em VMs, preferencialmente crie um snapshot.
- Valide espaço em disco suficiente na partição do sistema (WinSxS pode crescer durante o reparo).
Executar verificação do sistema de arquivos
Antes do DISM, use o SFC para reparar arquivos-base que podem estar quebrados:
sfc /scannow
Revise a saída. Se houver correções, reinicie antes de prosseguir.
Reparar a imagem do Windows com DISM
O erro 0x80073701 normalmente indica assemblies ausentes no armazenamento de componentes (WinSxS). Execute os três estágios do DISM:
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth
Se /RestoreHealth
falhar, rode novamente após limpar os componentes do Windows Update (veja a etapa de redefinição) ou considere especificar uma fonte local (mídia do Windows Server 2022) com:
DISM /Online /Cleanup-Image /RestoreHealth /Source:WIM:<letra:>\sources\install.wim:1 /LimitAccess
Dica: substitua install.wim:1
pelo índice correspondente à edição instalada.
Instalar outras atualizações e reiniciar
Se houver reinício pendente ou outras atualizações disponíveis, conclua-as primeiro. Conflitos de dependência podem impedir a remoção ou a reinstalação correta da KB5042881. Após cada ciclo, reinicie o servidor.
Tentar desinstalar via WUSA (quando aplicável)
Se a KB5042881 estiver registada, o WUSA consegue removê-la:
wusa /uninstall /kb:5042881 /quiet /norestart
Caso de contradição: se o WUSA afirmar que a atualização não está instalada, utilize o DISM para listar/remover pacotes (próxima seção).
Listar e remover a KB via DISM
Para localizar o identificador exato do pacote associado à KB5042881, execute:
DISM /Online /Get-Packages /Format:Table | findstr /i 5042881
Se um Package Identity for listado (ex.: PackageforRollupFix~31bf3856ad364e35~amd64~~20348.x.y
), remova com:
DISM /Online /Remove-Package /PackageName:PackageforRollupFix~31bf3856ad364e35~amd64~~20348.x.y
Notas:
- Se o DISM retornar que o pacote não está instalado, o problema é de metadados/cache, não de remoção. Prossiga para redefinir componentes.
- Se o pacote aparecer como Superseded, a remoção pode ser bloqueada. Conclua os reinícios e limpezas recomendadas.
Redefinir componentes do Windows Update
A redefinição limpa os metadados de atualização (SoftwareDistribution
) e o cache de catálogos (catroot2
), evitando reapresentação indevida da KB5042881:
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 wuauserv
net start cryptSvc
net start bits
net start msiserver
Após o script, force uma nova verificação de atualizações. Em ambientes geridos:
- Windows Update direto: abra Definições → Windows Update → Procurar atualizações.
- WSUS/SCCM: dispare uma nova avaliação de conformidade. Opcionalmente, use
UsoClient StartScan
(ouwuauclt /detectnow
em legado).
Instalação offline da KB (reparar registro do pacote)
Quando a KB5042881 não aparece como instalada mas continua sendo oferecida, reinstalá-la offline pode recompor o registro do pacote:
wusa <nome-do-pacote>.msu /quiet /norestart
Reinicie e valide o estado no Windows Update. Se o erro persistir, volte ao DISM /RestoreHealth
e repita a redefinição de componentes.
Último recurso: reparo no lugar ou reinstalação limpa
Se a Component Store permanecer inconsistente após várias tentativas, avalie:
- Reparo no lugar (in-place upgrade): executar o instalador do Windows Server 2022 e escolher manter dados e funções. Preserva funções de servidor e muitas vezes resolve anomalias de CBS.
- Reinstalação limpa: aplique apenas se o reparo no lugar não for possível. Restaure dados/funções a partir de backup.
Leitura dos logs e como identificar a causa‑raiz
Arquivo | Local | O que procurar |
---|---|---|
CBS.log | C:\Windows\Logs\CBS\CBS.log | Entradas com ERRORSXSASSEMBLY_MISSING , pacotes “Failed to finalize”, referências a KB5042881. |
DISM.log | C:\Windows\Logs\DISM\DISM.log | Falhas em /RestoreHealth , fontes indisponíveis, pacotes pendentes. |
WindowsUpdate.log | Get-WindowsUpdateLog (gera no Desktop) | Reoferecimento da KB, códigos secundários de falha e avaliações WSUS. |
Importante: a presença de pending.xml
indica operações de servicing pendentes. Evite manipular esse arquivo manualmente; prefira reiniciar e repetir o ciclo DISM + redefinição.
Boas práticas para evitar recorrência
- Reinícios consistentes: após instalar atualizações cumulativas, reinicie antes de novas instalações ou remoções.
- Espaço em disco: mantenha folga adequada em
%SystemDrive%
para que o CBS/WinSxS opere. - Integridade de origem: mantenha a mídia/ISO do Windows Server 2022 acessível para
/Source
do DISM quando a origem online falhar. - Ciclo de limpeza: execute periodicamente
DISM /Online /Cleanup-Image /StartComponentCleanup
para reduzir o peso do WinSxS (sem/ResetBase
em servidores que exigem possibilidade de desinstalação). - WSUS/SCCM: sincronize catálogos, aprove classificações corretas e limpe atualizações expiradas/superseded.
Sinais de que o problema foi resolvido
- O Windows Update deixa de oferecer a KB5042881.
DISM /Online /Cleanup-Image /ScanHealth
retorna que a imagem está saudável.- Os logs não exibem mais
0x80073701
para operações relacionadas à KB.
Guia rápido por perfis de ambiente
Ambiente | Abordagem recomendada | Observações |
---|---|---|
Server Core | Foco em DISM, SFC e script de redefinição por linha de comando. | Sem UI de Solução de Problemas; use logs e PowerShell. |
WSUS/SCCM | Sincronize, limpe metadados, dispare avaliação de conformidade. | Verifique aprovações e substituições; aplique reinícios mandatórios. |
Clusters | Remediação node-by-node com dreno de função e failover controlado. | Minimiza indisponibilidade e riscos de quorum. |
Comandos essenciais reunidos
:: Verificar e reparar arquivos de sistema
sfc /scannow
\:: Checagem e reparo da imagem
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth
\:: Listar pacote relacionado à KB5042881
DISM /Online /Get-Packages /Format\:Table | findstr /i 5042881
\:: Remover pacote pelo Package Identity
DISM /Online /Remove-Package /PackageName\:Package\for\RollupFix~31bf3856ad364e35~amd64~~20348.x.y
\:: Tentar desinstalar via WUSA
wusa /uninstall /kb:5042881 /quiet /norestart
\:: Redefinir componentes do Windows Update (script completo abaixo)
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 wuauserv && net start cryptSvc && net start bits && net start msiserver
Script de redefinição dos 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 wuauserv
net start cryptSvc
net start bits
net start msiserver
Notas finais e dicas de campo
- Logs detalhados: use
C:\Windows\Logs\CBS\CBS.log
eC:\Windows\Logs\DISM\DISM.log
para confirmar por que a KB5042881 não é reconhecida. - Instalação offline: ao reinstalar a KB, utilize o pacote
.msu
e o comandowusa
com parâmetros silenciosos para testes controlados. - Ambientes críticos: aplique snapshots ou backups completos antes de remover pacotes, reduzindo o risco de perda de funcionalidade.
- Validação pós‑reparo: depois da correção, execute um ciclo de atualizações completo e confirme se não há reoffer. Em servidores core, automatize uma verificação com tarefas agendadas.
Perguntas frequentes
O erro 0x80073701 sempre indica corrupção?
Quase sempre está ligado a componentes ausentes no WinSxS, mas também pode sinalizar dependências não satisfeitas ou metadados inconsistentes no cache do Windows Update.
O Get-HotFix
deve listar a KB5042881?
Nem sempre. Atualizações cumulativas podem não aparecer no Get-HotFix
. Prefira DISM /Get-Packages
para confirmar a presença real do pacote.
É seguro usar /ResetBase
?
Evite /ResetBase
em servidores, pois torna impossível desinstalar atualizações anteriores. Use apenas /StartComponentCleanup
sem /ResetBase
em ambientes de produção.
Posso apagar SoftwareDistribution.old
e catroot2.old
?
Sim, após alguns ciclos e se tudo estiver estável, você pode removê-las para liberar espaço.
Conclusão
Quando a KB5042881 reaparece após a instalação e a remoção falha com 0x80073701, o caminho mais efetivo é seguir a ordem recomendada: solucionador (se houver), SFC, DISM, checagem de dependências, remoção pelo WUSA/DISM quando aplicável e a redefinição dos componentes do Windows Update. Em grande parte dos cenários, essa sequência restaura a consistência do servicing e encerra o ciclo de “instala/reoferece” sem exigir reinstalação do sistema.
Resumo para ação imediata: execute SFC → DISM /RestoreHealth → limpe SoftwareDistribution/catroot2 → reinicie → verifique o Windows Update. Se necessário, remova/reinstale a KB via DISM/WUSA e confirme a saúde da imagem.