Ciao a tutti,
in un precedente post datato 2010, il mio collega Stefano Gagliardi ha brillantemente descritto cosa è il Component Store di Windows e come ridurre lo spazio occupato dalla cartella WinSXS.
Se non avete letto il vecchio articolo, vi consiglio di farlo adesso dato che nel mio post non ripeterò le informazioni già discusse per brevità.
Se avete letto l’articolo linkato sopra sapete già di cosa stiamo parlando: il Component Store e la cartella WinSXS che spesso può apparire con una dimensione (apparente) di decine di GB.
Per dare un esempio di dimensioni “apparenti” della cartella WinSxs, riporto sotto i valori visibili su alcune virtual machine del mio laboratorio (i valori sono puramente indicativi):
OS | Dimensione apparente di WinSXS |
Windows Server 2008 R2 | 6,5GB |
Windows 7 | 6,2GB |
Windows 2012 | 5,38GB |
Windows 8 | 7,95GB |
Prima di descrivere gli strumenti che abbiamo a disposizione nelle versioni più recenti dei sistemi operativi Microsoft per ridurre lo spazio occupato da WinSXS, una precisazione è d’obbligo:
Non eliminare o modificare manualmente il contenuto della cartella “C:\Windows\WinSXS” perchè questo non è supportato da Microsoft!
A differenza di Windows server 2008 e Windows Vista, le nuove versioni di sistema operativo effettuano lo scavenging automatico dei file non più utili al sistema; quindi non occorre avviare manualmente dello scavenging come era consigliato per Windows server 2008 e Vista.
Cleanmgr, ovvero Disk Cleanup tool
La riduzione dello spazio utilizzato dal Component Store può essere svolta facilmente dal tool Disk Cleanup Tool (cleanmgr.exe).
In realtà questo tool permette di eliminare file da varie fonti e non solo dal Component Store; quindi se il vostro obiettivo è “fare spazio”, questo è uno dei tool da usare.
Disk Cleanup può essere eseguito digitando nel menu start o in Run “cleanmgr.exe”; dopo qualche secondo di caricamento, verrà visualizzato un’intuitiva finestra come quelle di seguito illustrate:
Se richiesto, selezionare il disco su cui cleanmgr dovrà effettuare le attività di pulizia:
Come potete notare, non c’è grande differenza tra i due aspetti se non lo stile grafico specifico del sistema operativo (Windows 7/Windows server 2008 r2 sulla sinistra e Windows 8/Windows server 2012 sulla destra).
La differenza tra i sistemi operativi client e server è che il tool è disponibile direttamente nei client Window 7/8; sulle versioni server occorre abilitare la feature Desktop-Experience oppure effettuare il passaggio di seguito descritto per Windows server 2008 R2.
Abilitare Disk Cleanup tool su Windows server 2008 R2
Come descritto nell’articolo http://technet.microsoft.com/en-us/library/ff630161(v=ws.10).aspx, cleanmgr può essere reso disponibile senza abilitare la feature Desktop-Experience, che aggiungerebbe ulteriori funzionalità non richieste.
Ciò che occorre fare è la copia di due file in altrettanti percorsi; in particolare, occorre copiare:
- il file
C:\Windows\winsxs\amd64_microsoft-windows-cleanmgr_31bf3856ad364e35_6.1.7600.16385_none_c9392808773cd7da\cleanmgr.exe
in
%systemroot%\System32
- il file
C:\Windows\winsxs\amd64_microsoft-windows-cleanmgr.resources_31bf3856ad364e35_6.1.7600.16385_en-us_b9cb6194b257cc63\cleanmgr.exe.mui
in
%systemroot%\System32\en-US
Una volta fatto ciò, basterà eseguire Cleanmgr.exe dalla command prompt o come suggerito sopra.
Abilitare la feature Desktop-Experience su Windows Server 2008 R2 e 2012
In Windows server 2012 attualmente non è presente l’eseguibile e il file mui di cleanmgr nel Component Store (questo dettaglio potrebbe cambiare in futuro).
Quindi per abilitare Cleanmgr.exe, occorre aggiungere la feature Desktop-Experience sul vostro server; ciò aggiungerà anche altri tool e funzionalità che, solitamente, non sono necessari in ambiente enterprise. Un elenco delle funzionalità aggiunte dal Desktop-Experience su WIndows server 2008 R2 è disponibile in questo articolo http://technet.microsoft.com/en-us/library/cc772567.aspx.
Su Windows Server 2008 R2 si può abilitare la feature Desktop-Epercience da server manager, sotto la sezione feature:
In Windows server 2012, si può abilitare la medesima feature tramite Powershell, eseguendo il comando:
Add-WindowsFeature Desktop-Experience
Rimozione dei file di installazione di un Service Pack su Windows Server 2008 R2 e Windows 7
Nel momento in cui scrivo questo post, non è stato rilasciato alcun service pack per Windows server 2012 o Windows 8, quindi questo paragrafo è dedicato esclusivamente a Windows 7 e Windows server 2008 R2 con Service Pack.
Esistono due possibilità per rimuovere permanentemente file relativi all’installazione di Service Pack:
- Usare il tool Cleanmgr (discusso nelle sezioni precedenti)
- Eseguire il comando:
DISM /online /Cleanup-Image /SpSuperseded
Articoli consigliati
Di seguito un elenco di articoli che consiglio per approfondire l’argomento. Alcuni contenuti potrebber essere disponibili in sola lingua inglese:
- How to Alleviate Disk Space Pressure Caused By a Large Windows Component Store (WinSxS) Directory
http://support.microsoft.com/kb/2592038/EN-US - Desktop Experience Overview
http://technet.microsoft.com/en-us/library/cc772567.aspx - Disk Cleanup option on drive’s general properties and cleanmgr.exe is not present in Windows Server 2008 or Windows Server 2008 R2 by default
http://technet.microsoft.com/en-us/library/ff630161(v=ws.10).aspx - Windows Vista & Server 2008 - Perchè la cartella WinSXS è così grande?
http://blogs.technet.com/b/itasupport/archive/2010/12/20/windows-vista-amp-server-2008-perch-232-la-cartella-winsxs-232-cos-236-grande.aspx - Disk Space
http://blogs.msdn.com/b/e7/archive/2008/11/19/disk-space.aspx - Should you delete files in the \WinSXS directory? And what’s the deal with VSS?
http://blogs.technet.com/b/joscon/archive/2010/08/06/should-you-delete-files-in-the-winsxs-directory-and-what-s-the-deal-with-vss.aspx - General guidance on disk provisioning for WinSXS growth
http://blogs.technet.com/b/joscon/archive/2010/06/12/general-guidance-on-disk-provisioning-for-winsxs-growth.aspx
Buon 2013 a tutti voi, augurando che il nuovo anno sia migliore dei precedenti.
Alessandro Caniglia
Support Engineer
Microsoft Enterprise Platform Support