Articles

Pulitura disco in Windows Server

Nel corso del tempo, come il server Windows viene eseguito più a lungo, sempre più spazio su disco viene mangiato. Semplicemente andato! Investigando l’utilizzo del disco si lascia all’oscuro; non ci sono file di registro di grandi dimensioni, crash dump, o non c’è nessun software da rimuovere. Dov’è finito quello spazio?

La risposta: aggiornamenti di Windows, Service Pack e installazioni di hotfix.

Protip: questo post mostra anche come spostare la cartella Windows Server SoftwareDistribution e la cartella Documenti dell’utente in una partizione diversa.

Pulizia WinSxS in Windows Server – utilizzo di DISM e PowerShell#

L’utilità di pulizia disco di Windows cleanmgr non è disponibile in Windows Server 2012 se la funzionalità Esperienza desktop non è installata. Questo rende la pulizia dello spazio su disco utilizzato un po ‘ più difficile. È possibile utilizzare cmd.exe o la riga di comando di PowerShell e utilizzare Deployment Image Servicing and Management (DISM) per ripulire il Windows Component Store (WinSxS) in Windows Server 2012 e versioni successive.

La cartella WinSxS si trova nella cartella Windows, ad esempio C:\Windows\WinSxS. È la posizione per i file di Windows Component Store.

L’archivio componenti di Windows contiene tutti i file necessari per l’installazione di Windows. E, tutti gli aggiornamenti di tali file vengono conservati anche all’interno dell’archivio dei componenti man mano che gli aggiornamenti vengono installati (fonte: KB 2795190 – e leggi Gestisci l’archivio dei componenti). La cartella WinSxS diventerà grande

Puliamo WinSxS!

Recuperare lo spazio su disco utilizzato con Deployment Image Servicing and Management (DISM)#

Rituali di pulizia dopo la parata
Rituali di pulizia dopo la parata. Image via Flickr by Pabak Sarkar

Dism disk cleanup: Deployment Image Servicing and Management (DISM) è uno strumento da riga di comando che consente di installare, disinstallare, configurare e aggiornare le funzionalità, i pacchetti, i driver e le impostazioni internazionali di Windows. Il/Cleanup-Image parametro didism.exe fornisce agli utenti avanzati più opzioni per ridurre ulteriormente le dimensioni della cartella WinSxS.

Dism.exe /Online /Cleanup-Image ha alcuni parametri aggiuntivi (o switch):

  • /AnalyzeComponentStore
  • /StartComponentCleanup
  • /ResetBase con /StartComponentCleanup
  • /SPSuperseded

in questo articolo, presumo che potrete leggere di opzioni di aiuto, basta aggiungere /?, come: dism.exe /Online /Cleanup-Image /?.

Se ti è piaciuto questo, si potrebbe anche godere il seguente post riassumendo 5 modi in più per ripulire lo spazio su disco in Windows Server!

Analizza la cartella WinSxS (Component Store) con/AnalizeComponentStore#

Per prima cosa puoi usare il parametro/AnalyzeComponentStore. Questo analizza la dimensione del negozio di componenti in Windows. L’opzione AnalizeComponentStore è disponibile in Windows 8.1 Windows Server 2012 R2 e ti informerà se è consigliata o meno una pulizia dell’archivio componenti.

dism.exe /Online /Cleanup-Image /AnalyzeComponentStore
Code language: PowerShell (powershell)
dism.exe /online /Cleanup-Image /AnalyzeComponentStore
dism.exe /online /Cleanup-Image /AnalyzeComponentStore

In the above image, AnalyzeComponentStore recommends a Component Store Cleanup. Let’s do so.

/StartComponentCleanup parameter#

Dism.exe removes superseded and unused system files from a system with the /StartComponentCleanup parameter.

dism.exe /Online /Cleanup-Image /StartComponentCleanup
Code language: PowerShell (powershell)
dism.exe /online /Cleanup-Image /StartComponentCleanup
dism.exe / online / Cleanup-Image / StartComponentCleanup

Esiste anche un’attività pianificata registrata chiamata StartComponentCleanup. È possibile avviare questa attività dalla riga di comando:

schtasks.exe /Run /TN "\Microsoft\Windows\Servicing\StartComponentCleanup"
Code language: PowerShell (powershell)

Il parametro /StartComponentCleanup è supportato su Windows 8, Windows Server 2012 e versioni successive.

Utilizzando il parametro / StartComponentCleanup di Dism.exe su Windows 10 offre risultati simili all’esecuzione dell’attività StartComponentCleanup in Task Scheduler, ad eccezione delle versioni precedenti dei componenti aggiornati che verranno immediatamente eliminate (senza un periodo di grazia di 30 giorni) e non si avrà una limitazione di timeout di 1 ora.

Da un prompt dei comandi elevato, digitare quanto segue:Copia

Dism.exe /online /Cleanup-Image /StartComponentCleanup
Code language: PowerShell (powershell)

/ResetBase interruttore /StartComponentCleanup parametro#

con il /ResetBase switch con il /StartComponentCleanup parametro dism.exe, tutti rimpiazzato versioni di ogni componente il componente store viene rimosso.

dism.exe /Online /Cleanup-Image /StartComponentCleanup /ResetBase
Code language: PowerShell (powershell)
dism.exe / online / Cleanup-Image / StartComponentCleanup/ResetBase
dism.exe / online /Cleanup-Image /StartComponentCleanup/ResetBase

Non è possibile disinstallare tutti i service pack e gli aggiornamenti esistenti dopo il completamento di questo comando. Ciò non bloccherà la disinstallazione di service pack o aggiornamenti futuri.

Il /ResetBase parametro è supportato su Windows 8.1 e Windows Server 2012 R2.

/SPSuperseded parametro#

Il parametro/SPSuperseded rimuove tutti i componenti di backup necessari per la disinstallazione di un service pack. Impossibile disinstallare il service pack dopo il completamento di questo comando.

dism.exe /Online /Cleanup-Image /SPSuperseded
Code language: PowerShell (powershell)

Il Service Pack non può essere disinstallato dopo il completamento di questo comando.

Il /SPSuperseded parametro è supportato su Windows 7 o Windows Server 2008 R2 Service Pack 1, 2012, 2012 R2.

L’opzione/AnalyzeComponentStore è disponibile in Windows 8.1 e Windows Server 2012 R2. Utilizzare questa opzione per analizzare le dimensioni dell’archivio componenti (cartella WinSxS) in Windows.

Lo strumento di pulizia del disco è disponibile su Windows Server 2012 ma non su Windows Server 2012 R2#

Come detto all’inizio di questo articolo, lo strumento di pulizia del disco è disponibile in Windows Server 2012, se si installa la funzionalità Esperienza desktop.

In alcune versioni di Windows Server, si può semplicemente copiare cleanmgr.exe e cleanmgr.exe.muiC:\Windows\system32 e C:\Windows\system32\en-Us da un vecchio Windows 2008 R2 server, se non si desidera installare la funzionalità Esperienza Desktop.

I seguenti passaggi per installare (copiare) cleanmgr potrebbero non funzionare su tutte le versioni di Windows Server. Prova tu stesso.

Pulizia del disco Wizard addon su Windows Server 2008 R2
Microsoft KB2852386 aggiunge un’opzione di pulizia del disco su Windows Server 2008 R2, simile all’aggiornamento di Windows 7. Ho provato questo su Windows Server 2012. Potrebbe non ripulire tutto, ma almeno molto.

Ecco come renderecleanmgr.exe disponibile sullo standard Windows Server 2012 (versione Windows 6.2.9200), senza installare la funzionalità Desktop Experience:

Microsoft Windows (c) 2012 Microsoft Corporation. All rights reserved.PS C:\Users\jan> $osversion = ::OSVersion.VersionPS C:\Users\jan> write-host $osversion6.2.9200.0C:\Windows\System32>cd ..C:\Windows>copy WinSxS\amd64_microsoft-windows-cleanmgr.resources_31bf3856ad364e35_6.2.9200.16384_en-us_b6a01752226afbb3\cleanmgr.exe.mui \Windows\system32\en-US 1 file(s) copied.C:\Windows>copy WinSxS\amd64_microsoft-windows-cleanmgr_31bf3856ad364e35_6.2.9200.16384_none_c60dddc5e750072a\cleanmgr.exe \Windows\system32 1 file(s) copied.C:\Windows>system32\cleanmgr.exeC:\Windows>
Code language: PowerShell (powershell)

Sfortunatamente, questo non funziona più su Windows Server 2012 R2 (6.3.9600), probabilmente a causa di KB2821895. Come Aaron ha sottolineato nei commenti, la soluzione di cui sopra per copiare i file cleanmgr.exe e cleanmgr.exe.mui non sempre funziona bene. Pertanto ho rimosso queste informazioni per Windows Server 2012 R2.

Fortunatamente, la funzionalità di pulizia del disco è tornata in Windows Server 2016 (almeno TP5).

Pulitura Disco in Windows Server 2016 TP5
Pulitura Disco in Windows Server 2016 TP5

Dopo la pulizia del disco, una è necessario riavviare il server. Non dimenticare di riavviare il computer – o server – in seguito! La pulizia effettiva della directory WinSxs si verifica durante il prossimo riavvio.

Errore 0x800f0906 con DISM /Online /Cleanup-Image, PowerShell Installare-WindowsFeature e SFC /scannow#

Alcuni report sono disponibili a spiegare il Bollettino Microsoft sulla Sicurezza MS14-046 rotto DISM /Online /Cleanup-Image /RestoreHealth, PowerShell Installare-WindowsFeature con -Source parametro SFC /scannow. Sì, si è rotto molto

Un aggiornamento è reso disponibile da Microsoft: KB3005628

Aggiornamento per.NET Framework 3.5 su Windows 8, Windows 8.1, Windows Server 2012 e Windows Server 2012 R2. Questo aggiornamento risolve un problema che impedisce l’abilitazione della funzionalità opzionale Microsoft. NET Framework 3.5 dopo l’installazione dell’aggiornamento di sicurezza 2966827 o 2966828 (descritto in Microsoft Security Bulletin MS14-046) per Microsoft.NET Framework 3.5.

Sposta la cartella di distribuzione software di Windows Server#

Nel corso del tempo, la cartella di distribuzione software di Windows Updates in c:\Windows\SoftwareDistribution può diventare abbastanza grande, ad esempio quando più aggiornamenti non sono stati installati correttamente.

I file di Windows Update vengono scaricati in questa cartella e rimossi dopo l’installazione corretta. Quando ti trovi in una situazione in cui la partizione C: è piuttosto piccola e la cartella SoftwareDistribution consuma troppo spazio su disco, segui questi passaggi per spostare la cartella SoftwareDistribution in una posizione diversa.

Tutto in una shell cmd.exe (Avviare > Eseguire >cmd e premere invio). In questo esempio la nuova posizione è D:\Windows-SoftwareDistribution.

  1. Arrestare il servizio Windows Update: net stop wuauserv
  2. Rinominare la cartella c:\Windows\SoftwareDistributionc:\Windows\SoftwareDistribution.oldrename c:\windows\SoftwareDistribution SoftwareDistribution.old
  3. Creare un collegamento utilizzando Windows Sysinternals di Giunzione, o Windows mklink
    • Creare la nuova directory:
      mkdir D:\Windows-SoftwareDistribution
    • Crea il nodo:
      c:\>junction C:\Windows\SoftwareDistribution "D:\Windows-SoftwareDistribution", oppure:
      c:\>mklink /J C:\Windows\SoftwareDistribution "D:\Windows-SoftwareDistribution"
  4. Riavviare il Servizio Windows Update: net start wuauserv

Quando, dopo un po’, tutto sembra funzionare e aggiornarsi correttamente, elimina il tuo SoftwareDistribution.vecchia cartella.

Sposta la cartella Documenti utente#

Un altro modo per guadagnare spazio extra è spostare la cartella Documenti utente (e altri, come Download), ad esempio daC:\Users\$USER$\Documents aD:\User\$USER$\Documents (sostituire USER USER the con il nome utente di cui vuoi spostare la cartella Documenti). Ecco i passaggi da seguire (screenshot presi da Windows Server 2016 TP5):

  1. Aprire Esplora risorse e fare clic destro sulla cartella Documenti e poi Proprietà
  2. Scegli la cartella
  3. Modificare la posizione in cui sono memorizzati i file
  4. Quando la destinazione non esiste, Windows chiede di creare la cartella per voi
  5. Dopo il completamento, i file vengono spostati nella nuova posizione.
Spostare un Utente di Windows, la Cartella Documenti, passo 01
Spostare un Utente di Windows, la Cartella Documenti, step 01
Spostare un Utente di Windows, la Cartella Documenti, step 02
Spostare un Utente di Windows, la Cartella Documenti, step 02
Spostare un Utente di Windows, la Cartella Documenti, passaggio 03
Spostare un Utente di Windows, la Cartella Documenti, passo 03

Conclusione #

Sì, l’archivio componenti di Windows (cartella WinSxS) può diventare grande, molto grande. Ma per fortuna, Microsoft ci fornisce gli strumenti per monitorare, gestire e ripulire la cartella WinSxS per recuperare lo spazio su disco utilizzato.

Se hai dimestichezza con l’installazione della funzionalità Desktop Experience di Windows sul tuo sistema, puoi avere l’utilità Pulitura disco sul tuo sistema. In caso contrario, è possibile utilizzare il comando DISM (Deployment Image Servicing and Management) per varie attività di pulizia.

Per guadagnare un po ‘ di spazio libero in più, è anche possibile spostare la cartella di Windows SoftwareDistribution in una partizione diversa.