Gestore della configurazione Script di pulizia della cache client – Spazio su disco libera facilmente. Probabilmente lo sei già consapevole SCCM gestisce abbastanza bene la cache del cliente (Elimina gli oggetti più vecchi quando lo spazio libero termina).
Questo script elimina tutti i contenuti nella cartella CCMCACHE che è più vecchia di X giorni. Lavorare con qualsiasi SCCM pubblicazione. Di seguito è riportato il codice per la regola di conformità.
#discover
$MinDays = 20
$UIResourceMgr = New-Object -com “UIResource.UIResourceMgr”
$Cache = $UIResourceMgr.GetCacheInfo()
($Cache.GetCacheElements() |
where-object {[datetime]$_.LastReferenceTime -lt (get-date).adddays(-$mindays)} |
Measure-object).Count
#remediate
$MinDays = 20
$UIResourceMgr = New-Object -ComObject UIResource.UIResourceMgr
$Cache = $UIResourceMgr.GetCacheInfo()
$Cache.GetCacheElements() |
where-object {[datetime]$_.LastReferenceTime -lt (get-date).adddays(-$mindays)} |
foreach {
$Cache.DeleteCacheElement($_.CacheElementID)
}
NOTA: Potresti ottenere un errore Nel rapporto se non si imposta il PowerShell Politico di esecuzione "bypass" nelle impostazioni del client predefinite Agente per computer in SCCM Console.
NOTA: Lo script cancella solo la cache nell'elenco client. Se si aggiorna o si reinstalla SCCM Client sul PC client si vede che non tutte le cartelle in C:\Windows ccmcache persistono nell'elenco cache. In questa situazione, Hai bisogno di un altro script per cancellare la cartella.
Per ottenere l'elenco degli oggetti CCMCACHE Esegui lo script PS:
$CMObject = New-Object -ComObject “UIResource.UIResourceMgr”
$CMCacheObjects = $CMObject.GetCacheInfo()
$CMCacheObjects.GetCacheElements()
Finalmente una sceneggiatura che funziona grazie mille
Ottimo riferimento! Grazie mille.