HowTo: Windows Server 2012 R2 WSUS Bereinigung mit PowerShell

In diesem HowTo geht es um die automatische Bereinigung der Windows Server Update Services (WSUS) unter Windows Server 2012 R2 mit der PowerShell.

Für die Verwaltung der WSUS hat Microsoft ab Windows Server 2012 R2 eine Reihe neuer Cmdlets der PowerShell hinzugefügt. Die Auflistung aller dazugehörigen Cmdlets finden Sie in der TechNet Library. Darunter ist auch das Cmdlet Invoke-WsusServerCleanup, mit welchem man eine Bereinigung durchführen kann:

Windows Server 2012 R2 WSUS Bereinigung mit Powershell

In diesem Beispiel wurde der Parameter „-CleanupObsoleteComputers“ nicht mit aufgeführt.

Um eine automatische WSUS Bereinigung durchzuführen, empfiehlt es sich, ein PowerShell Skript zu erstellen und dieses als geplante Aufgabe einmal wöchentlich zu triggern.

Ein einfaches PowerShell Skript mit automatischem E-Mail-Versand, könnte wie folgt aussehen:

Anzeigen

Was denken Sie über dieses Thema?

Mit der Kommentarfunktion können Sie gerne hier Ihre Meinung hinterlassen, wir freuen uns darauf. Auch sind wir per RSS-Feed, Twitter, Facebook und E-Mail erreichbar.

Neueste Beiträge

Neueste Kommentare

Verfasst von:

Anzeigen

Ein Kommentar

  1. 08. Februar 2017 11:33

    Hallo Johannes,
    vielen Dank für das HowTo: Windows Server 2012 R2 WSUS Bereinigung mit PowerShell!
    Bei mir hat das Script so aber noch nicht ganz funktioniert. Es kam folgender Fehler:

    Invoke-WsusServerCleanup : Eine Ausnahme vom Typ „Microsoft.UpdateServices.Administration.WsusInvalidServerException“ wurde ausgelöst.
    In Zeile:6 Zeichen:1
    + Invoke-WsusServerCleanup -CleanupObsoleteUpdates -CleanupUnneededContentFiles -C …
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : InvalidData: (Microsoft.Updat…rCleanupCommand:InvokeWsusServerCleanupCommand) [Invoke-WsusServerCleanup], WsusInvalidServerException
    + FullyQualifiedErrorId : ServerIsInvalid,Microsoft.UpdateServices.Commands.InvokeWsusServerCleanupCommand

    Ich habe den Befehl für die Bereinigung (Zeile 6) wie folgt angepasst:

    Get-WsusServer -name ${env:COMPUTERNAME} -port 8530 | Invoke-WsusServerCleanup -CleanupObsoleteUpdates -CleanupUnneededContentFiles -CompressUpdates -DeclineExpiredUpdates -DeclineSupersededUpdates | Out-File $Logfile

Die Kommentare sind geschlossen