Gestionnaire de configuration Script de nettoyage du cache client – Libérez facilement de l'espace disque. Vous le savez probablement déjà SCCM gère plutôt bien son cache client (supprime les objets plus anciens lorsque l'espace libre se termine).
Ce script purge tout le contenu du dossier ccmcache datant de plus de X jours. Travaillez avec n'importe quel SCCM libérer. Ci-dessous le code de la règle de 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)
}
NOTE: Vous pouvez obtenir un erreur dans le rapport si vous ne définissez pas le PowerShell politique d'exécution « Contourner » dans Paramètres client par défautAgent informatique dans SCCM Console.
NOTE: Le script efface uniquement le cache dans la liste des clients. Si vous mettez à niveau ou réinstallez SCCM client sur le PC client, vous voyez que tous les dossiers dans c:\windowsccmcache persiste dans la liste des caches. Dans cette situation, vous avez besoin d'un autre script pour vider le dossier.
Pour obtenir la liste des objets ccmcache, exécutez le script ps:
$CMObject = New-Object -ComObject “UIResource.UIResourceMgr”
$CMCacheObjects = $CMObject.GetCacheInfo()
$CMCacheObjects.GetCacheElements()
enfin un script qui fonctionne merci beaucoup
Excellente référence! Merci beaucoup.