KB5042881 su Windows Server 2022 si reinstalla in loop e la disinstallazione fallisce con 0x80073701? In questa guida pratica trovi cause, diagnosi e una sequenza di azioni collaudate per rimuovere il pacchetto o ripristinare il sistema senza downtime prolungato.
Panoramica del problema
Dopo l’installazione del cumulativo 2024‑09 KB5042881 su Windows Server 2022, Windows Update può tornare a proporre lo stesso pacchetto e fallire ripetutamente con l’errore 0x80073701 (ERRORSXSASSEMBLY_MISSING). In molti casi, il tentativo di rimozione tramite Impostazioni > Cronologia aggiornamenti o con wusa
non va a buon fine perché l’update “non risulta installato”, pur essendo parzialmente registrato nel sistema.
Perché accade
Windows Server usa il motore Component-Based Servicing (CBS) e il WinSxS per installare, aggiornare e rimuovere i componenti. L’errore 0x80073701 indica che uno o più assembly (manifest, payload o metadati) richiesti dal pacchetto non sono presenti o sono incoerenti. Questo può succedere quando:
- il Servicing Stack Update (SSU) non è allineato e impedisce la corretta registrazione o disinstallazione;
- la cache di Windows Update (SoftwareDistribution, Catroot2) contiene stati intermedi o corruzioni;
- l’operazione si è interrotta (riavvio, spazio disco insufficiente, antivirus che blocca file temporanei);
- esistono pending operations non concluse (
pending.xml
, transazioni CBS).
Prima di iniziare: prerequisiti e sicurezza
- Backup/Snapshot: crea uno snapshot della VM o un backup completo del sistema e dello stato del sistema (soprattutto se è un Domain Controller).
- Finestra di manutenzione: programma l’intervento, in particolare su nodi in cluster, Hyper‑V/SQL/FS, RDS o ruoli critici.
- Account amministratore locale o equivalente: esegui i comandi da Prompt dei comandi o PowerShell con privilegi elevati.
- Spazio su disco: assicurati di avere almeno 6–8 GB liberi su
C:
per DISM e cache di aggiornamento.
Strategia consigliata (in breve)
Questa sequenza risolve la maggior parte dei loop d’installazione e disinstallazione:
- DISM per valutare e riparare l’immagine.
- Reset componenti Windows Update (cache & servizi).
- Disinstallazione con
wusa
odism /remove-package
se presente in elenco. - Verifica SSU/CU e reinstallazione pulita del cumulativo.
- Analisi log per errori residui.
- Riparazione in‑place come ultima istanza.
Tabella delle azioni consigliate
Fase | Cosa fare | Perché può risolvere |
---|---|---|
Eseguire lo strumento di risoluzione problemi Windows Update | Impostazioni > Sistema > Risoluzione problemi > Altri strumenti > Windows Update | Rileva e ripara errori noti di registri di servizio, cartelle o dipendenze bloccate. |
Riparare l’immagine di sistema con DISM | In CMD come amministratore:DISM /Online /Cleanup-Image /CheckHealth DISM /Online /Cleanup-Image /ScanHealth DISM /Online /Cleanup-Image /RestoreHealth | Ricostruisce i componenti corrotti che generano 0x80073701. Riprova l’aggiornamento o la disinstallazione al termine. |
Verificare ed installare eventuali SSU/CU pendenti | Impostazioni > Windows Update > Verifica disponibilità | Un SSU mancante può impedire la corretta registrazione del pacchetto o la sua rimozione. |
Rimuovere manualmente il pacchetto | Opzione A – wusawusa /uninstall /kb:5042881 /quiet /norestart Opzione B – DISM (se il pacchetto compare): dism /online /get-packages | findstr "5042881" dism /online /remove-package /packagename:<NomePacchetto> | Forza la disinstallazione anche se non compare nella GUI. DISM opera a un livello più basso rispetto a wusa. |
Resettare i componenti di Windows Update | In CMD come amministratore:net stop wuauserv net stop cryptSvc net stop bits net stop msiserver ren %windir%\SoftwareDistribution SoftwareDistribution.old ren %windir%\System32\catroot2 catroot2.old net start wuauserv … | Svuota cache, file temporanei e database di componenti; utile se l’update è parzialmente registrato. |
Analizzare i log e correggere errori residui | %windir%\Logs\CBS\CBS.log %windir%\WindowsUpdate.log (con PowerShell Get-WindowsUpdateLog ) | Identifica file mancanti o dipendenze che DISM non ha potuto riparare. |
Riparazione in‑place (ultimo ricorso) | Avvia Setup.exe da ISO di Windows Server 2022 con opzione “Conserva dati e app”. | Sostituisce tutti i file di sistema senza formattare, risolvendo corruzioni irrecuperabili. |
Procedura dettagliata
Strumento di risoluzione dei problemi di Windows Update
Se usi Desktop Experience, apri Impostazioni e lancia il troubleshooter. Su Server Core lo strumento non è disponibile: passa direttamente ai passi DISM e reset componenti.
Verifica e riparazione con DISM
Esegui in sequenza:
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth
Se /RestoreHealth
non riesce a reperire i file dai canali predefiniti o da Windows Update (WSUS, proxy, criteri), usa una sorgente offline coerente con l’edizione/lingua del server:
- Monta l’ISO di Windows Server 2022 (stessa build o più recente).
- Individua l’indice dell’edizione nell’immagine:
dism /Get-WimInfo /WimFile:X:\sources\install.wim
- Esegui la riparazione indicando
/Source
e/LimitAccess
:DISM /Online /Cleanup-Image /RestoreHealth /Source:wim:X:\sources\install.wim:<Indice> /LimitAccess
Al termine, riavvia e verifica:
sfc /scannow
Controllo SSU e CU pendenti
Apri Impostazioni > Windows Update e premi Verifica disponibilità. In ambienti WSUS/ConfigMgr, assicurati che l’SSU più recente sia approvato. Per verificare dal prompt:
dism /online /get-packages | findstr /i "servicing stack"
dism /online /get-packages | findstr /i "kb5042881"
Se mancano SSU o altri pacchetti richiesti, installali prima di ritentare la disinstallazione o la reinstallazione del cumulativo.
Rimozione manuale del pacchetto
Opzione A – wusa
wusa /uninstall /kb:5042881 /quiet /norestart
Controlla poi Impostazioni > Cronologia aggiornamenti. Se il ciclo di riproposizione continua, passa a DISM.
Opzione B – DISM
- Trova il nome completo del pacchetto:
dism /online /get-packages | findstr 5042881
- Rimuovi per
Packagename
:dism /online /remove-package /packagename:PackageforRollupFix~31bf3856ad364e35~amd64~~<versione>
Nota: se DISM indica che il pacchetto non è installato ma Windows Update lo ripropone, è probabile una registrazione parziale. Procedi con il reset dei componenti e riprova.
Reset completo dei componenti di Windows Update
Esegui in un prompt elevato:
net stop wuauserv
net stop cryptSvc
net stop bits
net stop msiserver
ren %windir%\SoftwareDistribution SoftwareDistribution.old
ren %windir%\System32\catroot2 catroot2.old
net start msiserver
net start bits
net start cryptSvc
net start wuauserv
Opzionale (se usi WSUS/ConfigMgr):
wuauclt /detectnow
wuauclt /reportnow
Best practice: non cancellare pending.xml
a meno di indicazioni precise dai log; può interrompere transazioni CBS legittime.
Analisi dei log
I log chiave sono:
%windir%\Logs\CBS\CBS.log
– motore CBS e component store;WindowsUpdate.log
– pipeline di Windows Update (ricostruiscilo da PowerShell).
Comandi utili:
findstr /c:"[SR]" %windir%\Logs\CBS\CBS.log
findstr /c:"error" /c:"0x80073701" %windir%\Logs\CBS\CBS.log
powershell -NoLogo -NoProfile -Command "Get-WindowsUpdateLog"
Cerca voci come “Missing Winning Component Key”, “Manifest missing”, “CSI” seguite da nomi di file. Se DISM non riesce a ripristinarli online, ripeti con /Source
da ISO come indicato sopra.
Riparazione in‑place (ultima risorsa)
Quando la corruzione è estesa o i tentativi falliscono:
- Monta un’ISO di Windows Server 2022 compatibile (stessa edizione/lingua).
- Esegui
Setup.exe
e scegli Conserva file personali e app. - Completa il setup e riavvia. Poi verifica:
sfc /scannow DISM /Online /Cleanup-Image /ScanHealth
Questa procedura sostituisce i binari di sistema mantenendo ruoli e feature.
Comandi “copia e incolla” pronti
Sequenza rapida DISM → Reset → Disinstallazione
:: 1) Valutazione e riparazione immagine
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth
:: 2) Reset componenti WU
net stop wuauserv
net stop cryptSvc
net stop bits
net stop msiserver
ren %windir%\SoftwareDistribution SoftwareDistribution.old
ren %windir%\System32\catroot2 catroot2.old
net start msiserver
net start bits
net start cryptSvc
net start wuauserv
:: 3) Disinstallazione KB (prova 1: wusa)
wusa /uninstall /kb:5042881 /quiet /norestart
:: 4) Disinstallazione KB (prova 2: DISM)
dism /online /get-packages | findstr 5042881
dism /online /remove-package /packagename:
:: 5) Verifica integrità finale
sfc /scannow
DISM /Online /Cleanup-Image /ScanHealth
DISM con sorgente ISO
:: Individua indice edizione
dism /Get-WimInfo /WimFile:X:\sources\install.wim
:: Riparazione con sorgente
DISM /Online /Cleanup-Image /RestoreHealth /Source:wim:X:\sources\install.wim:<Indice> /LimitAccess </code></pre>
<h2>Scenari e accorgimenti specifici</h2>
<h3>Server Core</h3>
<ul>
<li>Non è presente il risolutore grafico di Windows Update; affidati a DISM e reset componenti.</li>
<li>Usa <code>sconfig</code> per alcune operazioni (configurazione rete, dominio, Windows Update di base).</li>
</ul>
<h3>WSUS / ConfigMgr / Servizi di gestione patch</h3>
<ul>
<li>Approva l’SSU più recente <em>prima</em> del CU. Molte disinstallazioni falliscono senza lo stack aggiornato.</li>
<li>Se il client è bloccato, esegui reset componenti e ri‑sincronizza: <code>wuauclt /detectnow</code>, quindi <code>/reportnow</code>.</li>
<li>Controlla criteri GPO che forzano origini (WUfB, WSUS) e potrebbero inibire <code>/RestoreHealth</code> online.</li>
</ul>
<h3>Nodi di cluster e Hyper‑V</h3>
<ul>
<li>Metti il nodo in <em>Pause</em> e sposta i ruoli prima di intervenire.</li>
<li>Se usi <em>Cluster‑Aware Updating</em>, valuta di escludere temporaneamente il nodo problematico finché non risolvi il loop.</li>
</ul>
<h3>Domain Controller</h3>
<ul>
<li>Predisponi un backup dello stato del sistema. I riavvii addizionali sono normali dopo riparazioni CBS.</li>
</ul>
<h3>Antivirus/EDR</h3>
<ul>
<li>Valuta un’esclusione temporanea per <code>%windir%\SoftwareDistribution</code>, <code>%windir%\WinSxS</code> e <code>%windir%\Logs\CBS</code> durante le fasi DISM e reset, se il prodotto lo consente.</li>
</ul>
<h3>Se il server non si avvia</h3>
<ol>
<li>Accedi a <strong>WinRE</strong> (Ambiente Ripristino) > <em>Prompt dei comandi</em>.</li>
<li>Identifica la lettera di unità del sistema (spesso <code>D:</code> in WinRE).</li>
<li>Esegui <em>offline servicing</em>:
<pre><code>dism /Image:D:\ /Get-Packages | findstr 5042881
dism /Image:D:\ /Remove-Package /PackageName:<NomePacchetto>
sfc /scannow /offbootdir=D:\ /offwindir=D:\Windows
Riavvia e riesegui DISM /Online /Cleanup-Image /ScanHealth
nel sistema avviato.
Domande frequenti
Posso disinstallare un SSU? No: gli SSU sono non disinstallabili per progettazione. Concentrati su DISM, reset componenti e reinstallazione corretta del CU.
Il pacchetto non compare con /get-packages
ma Windows Update lo propone. Tipico di registrazione parziale: esegui DISM → reset componenti, riavvia e riprova la scansione/installazione o la disinstallazione.
Serve sempre la sorgente ISO? No. È necessaria solo se /RestoreHealth
non riesce a ottenere i payload online o segnala file mancanti non recuperabili.
Quando usare la riparazione in‑place? Quando i log CBS mostrano corruzioni estese o cicli irrisolvibili e gli step precedenti non hanno effetto. È invasiva ma salva configurazioni e ruoli.
Checklist finale
- Eseguito DISM con esito positivo (
/RestoreHealth
completato)? - Eseguito reset componenti (SoftwareDistribution e Catroot2 rinominati)?
- Tentata disinstallazione con wusa e, se necessario, con DISM per
Packagename
? - Verificato e applicato SSU correnti?
- Analizzati CBS.log e WindowsUpdate.log per residui?
- Eseguito sfc /scannow e nuova ricerca aggiornamenti?
- Solo se tutto fallisce: riparazione in‑place.
Note operative e buone pratiche
- Backup: prima di rimuovere pacchetti o modificare cartelle di sistema, crea uno snapshot o un backup completo.
- Controllo integrità successivo: dopo i passaggi 2, 4 o 7, esegui
sfc /scannow
per verificare che non vi siano file danneggiati. - SSU: assicurati di avere l’SSU di settembre 2024 o successivo; senza SSU aggiornato la rimozione dei CU può fallire.
- Offline DISM: se il server non si avvia, monta l’unità da WinRE o da un altro OS e usa
dism /Image:<lettera>:\ /Remove-Package …
. - Ordine consigliato: DISM → reset componenti → wusa → DISM /remove-package risolve nella maggior parte dei casi, evitando reinstallazioni complete.
Riepilogo
Il loop di KB5042881 con errore 0x80073701 è quasi sempre riconducibile a incoerenze del component store o a uno stack di servicing non allineato. Agendo nell’ordine DISM (con sorgente se serve) → reset dei componenti → rimozione mirata e, solo in ultima istanza, riparazione in‑place, puoi ripristinare la coerenza di Windows Server 2022 e far procedere gli aggiornamenti senza dover formattare o ripartire da zero.
Modello operativo consigliato: applica sempre gli SSU appena disponibili, monitora lo spazio su disco e mantieni politiche antivirus compatibili con la cartella WinSxS. La prevenzione riduce drasticamente la probabilità di loop d’aggiornamento e corruzioni CBS.
Se adotti questa guida come runbook: documenta nel tuo ticketing ogni comando eseguito e l’esito (codici di ritorno, stringhe chiave dai log) per facilitare audit e incident review. In ambienti regolamentati, allega la trascrizione dei comandi e lo stato pre/post (dism /get-packages
, sfc
, ScanHealth
).