Script CMD per riparare Windows Update
Uno script CMD per riparare Windows Update può risolvere errori causati da una cache danneggiata o da servizi di sistema bloccati. La procedura arresta temporaneamente Windows Update, BITS, Servizi di crittografia e Windows Installer, quindi rinomina le cartelle che contengono i file temporanei degli aggiornamenti. Al riavvio dei servizi, Windows 10 o Windows 11 ricrea automaticamente le directory necessarie. Il metodo non rimuove documenti, applicazioni o impostazioni personali, ma può eliminare i pacchetti di aggiornamento già scaricati.
Quando usare lo script per Windows Update
Il reset della cache è utile quando Windows Update resta fermo su “Ricerca di aggiornamenti”, mostra codici di errore durante il download o ripete continuamente lo stesso aggiornamento. Il problema può dipendere da file temporanei incompleti nella cartella SoftwareDistribution, dal catalogo crittografico danneggiato o da un servizio che non risponde correttamente.
Lo script interviene principalmente su queste componenti di Windows:
- Windows Update, il servizio che gestisce la ricerca e l’installazione degli aggiornamenti.
- BITS, il servizio che scarica i file in background.
- Servizi di crittografia, necessari per verificare firme e cataloghi degli aggiornamenti.
- Windows Installer, coinvolto in alcune operazioni di installazione e manutenzione.
- La cartella
C:WindowsSoftwareDistribution, che contiene cache e pacchetti temporanei. - La cartella
C:WindowsSystem32catroot2, che contiene cataloghi utilizzati dai componenti crittografici.
La rinomina delle cartelle è preferibile alla cancellazione diretta perché conserva una copia di sicurezza temporanea. Windows ricrea le cartelle originali quando i servizi vengono avviati nuovamente.
Come creare lo script CMD per riparare Windows Update
Passo 1: aprire Blocco note
Apri Blocco note da Windows 10 o Windows 11 e incolla il codice seguente. Il controllo iniziale verifica che il file sia eseguito con privilegi amministrativi; senza questi permessi Windows non consente di arrestare alcuni servizi o modificare le cartelle di sistema.
@echo off setlocal net session >nul 2>&1 if not %errorlevel%==0 ( echo Errore: esegui questo file come amministratore. echo Fai clic destro sul file e scegli "Esegui come amministratore". pause exit /b 1 ) echo Arresto dei servizi di Windows Update... net stop bits /y net stop wuauserv /y net stop appidsvc /y net stop cryptsvc /y net stop msiserver /y echo Rimozione delle vecchie copie della cache... if exist "%windir%SoftwareDistribution.old" ( rmdir /s /q "%windir%SoftwareDistribution.old" ) if exist "%windir%System32catroot2.old" ( rmdir /s /q "%windir%System32catroot2.old" ) echo Rinomina delle cartelle della cache... if exist "%windir%SoftwareDistribution" ( ren "%windir%SoftwareDistribution" SoftwareDistribution.old ) if exist "%windir%System32catroot2" ( ren "%windir%System32catroot2" catroot2.old ) echo Riavvio dei servizi... net start cryptsvc net start bits net start wuauserv net start appidsvc net start msiserver echo. echo Operazione completata. echo Riavvia il computer e controlla nuovamente Windows Update. pause endlocal
Il comando rmdir /s /q elimina esclusivamente le vecchie copie .old create da un’esecuzione precedente. La cache attiva viene invece rinominata con ren, così Windows può ricrearla senza confondere i file precedenti con quelli nuovi.
Passo 2: salvare il file con estensione .cmd
In Blocco note seleziona File > Salva con nome. Nel campo del nome inserisci, per esempio, ripara-windows-update.cmd; nel menu del tipo di file scegli Tutti i file. Mantieni la codifica UTF-8 o ANSI e salva il file in una posizione facilmente raggiungibile, come il desktop.
Il file deve terminare con .cmd e non con .cmd.txt. Se le estensioni sono nascoste, apri Esplora file, seleziona Visualizza > Mostra > Estensioni nomi file e verifica il nome completo.
Passo 3: eseguire il file come amministratore
Fai clic destro su ripara-windows-update.cmd e scegli Esegui come amministratore. Nella finestra Controllo dell’account utente seleziona Sì.
Durante l’esecuzione possono comparire messaggi come “Il servizio non è stato avviato” o “Il servizio non è in esecuzione”. Questi messaggi non indicano necessariamente un errore: significano spesso che il servizio era già fermo. È importante che lo script arrivi alla fase di riavvio e mostri il messaggio “Operazione completata”.
Cosa fare dopo il reset della cache
Riavvia il computer dopo l’esecuzione dello script. Il riavvio completa il rilascio dei file bloccati e consente a Windows 10 o Windows 11 di ricreare le directory SoftwareDistribution e catroot2 con contenuti aggiornati.
Dopo il riavvio, apri le impostazioni di Windows:
- In Windows 11, vai in Impostazioni > Windows Update.
- In Windows 10, vai in Impostazioni > Aggiornamento e sicurezza > Windows Update.
Seleziona Verifica disponibilità aggiornamenti e attendi il completamento della ricerca. Il primo controllo può richiedere più tempo perché Windows deve ricreare la cache e scaricare nuovamente i pacchetti necessari.
La cartella SoftwareDistribution.old può occupare spazio dopo il reset, perché contiene la vecchia cache rinominata. Se Windows Update funziona correttamente e non sono necessari controlli aggiuntivi, puoi eliminarla da Esplora file con un account amministratore. La cartella catroot2.old può essere rimossa nello stesso modo; non eliminare invece la cartella attiva senza aver prima arrestato i servizi interessati.
Se l’errore resta presente, controlla che data, ora e fuso orario siano corretti, verifica lo spazio libero sull’unità di sistema e prova lo strumento di risoluzione dei problemi integrato. In Windows 11 il percorso è Impostazioni > Sistema > Risoluzione dei problemi > Altri strumenti per la risoluzione dei problemi > Windows Update; in Windows 10 si trova in Impostazioni > Aggiornamento e sicurezza > Risoluzione dei problemi > Strumenti di risoluzione dei problemi aggiuntivi.
Precauzioni prima di eseguire il comando
Lo script richiede un account amministratore perché modifica servizi e cartelle protette di Windows. Chiudi le applicazioni che stanno installando software e non spegnere il computer mentre i servizi vengono arrestati o riavviati.
Leggi anche: Script CMD backup cartelle Windows con Robocopy
Il reset non cancella i file personali, ma rimuove i dati temporanei degli aggiornamenti già scaricati. Un aggiornamento interrotto dovrà quindi essere scaricato di nuovo, con un consumo aggiuntivo di dati e tempo.
Prima di usare lo script, è consigliabile creare un punto di ripristino se il computer viene utilizzato per attività importanti. Il punto di ripristino non è obbligatorio per questa procedura, ma permette di tornare a una configurazione precedente in caso di problemi indipendenti da Windows Update.
Leggi anche: Script CMD: punto di ripristino Windows in un clic
Non modificare i nomi dei servizi o dei percorsi presenti nel codice. Windows 10 e Windows 11 utilizzano queste directory per la cache degli aggiornamenti, ma installazioni aziendali con criteri di gruppo o sistemi gestiti da WSUS possono richiedere verifiche aggiuntive da parte dell’amministratore IT.
Uno script cmd riparare Windows Update è efficace soprattutto quando il guasto dipende dalla cache locale o dai servizi bloccati.
Leggi anche: Script CMD per pulire Windows Update e riavviare i servizi
Potrebbe interessarti anche:
- Windows Update bloccato allo 0 Windows 11: script PowerShell
- Errore 0x800f081f Windows 11: ripararlo con DISM
- Errore DISM 87 Windows 11: come risolverlo
- Servizio Windows Installer non avviato: come ripristinarlo
FAQ
Sì, i servizi e le cartelle usati dallo script sono presenti sia in Windows 10 sia in Windows 11, anche se i percorsi delle impostazioni cambiano tra le due versioni.
No, lo script interviene sui servizi di aggiornamento e sulle cartelle temporanee SoftwareDistribution e catroot2. Documenti, applicazioni e impostazioni personali non vengono eliminati.
No, l’arresto dei servizi e la modifica delle cartelle protette richiedono l’esecuzione tramite Esegui come amministratore.
Significa che il servizio era già arrestato. Lo script può continuare, purché riesca a rinominare le cartelle e a riavviare i servizi necessari.
Sì, puoi eliminarle dopo un riavvio e dopo aver verificato che Windows Update funzioni correttamente. Le cartelle .old sono copie della cache precedente e non contengono file personali.
Altri articoli di questa serie:
- Script batch riparazione file sistema Windows 10/11
- Script BAT per pulire i file temporanei di Windows
- Script batch reset rete Windows: ripristino completo
- Script batch rapporto diagnostico Windows: tutorial
- Script BAT backup automatico Robocopy Windows
- Script batch controllo servizi Windows e arresti
- Script CMD per archiviare file vecchi su Windows
- Script batch: organizza i file per estensione
- Script BAT per controllare lo spazio disco in Windows
Altro per te
WindowsScript cmd controllo servizi Windows: rapporto
Lo script cmd controllo servizi Windows proposto in questo articolo analizza i servizi installati, individua quelli con stato STOPPED oppure configurati come DISABLED e…
Script CMD per archiviare file vecchi su Windows
Script CMD: trova i file più grandi in Windows
Spooler di stampa bloccato Windows 11: script CMD
Errore negli aggiornamenti di Windows? Come correggere tutti gli errori di Windows Update in colpo solo
Aggiornamento Windows Update fallito?
Script BAT per controllare lo spazio disco in Windows
Script batch riparazione file sistema Windows 10/11
