Windows Server WSUS Bereinigung PowerShell

In diesem geht es um die automatische Bereinigung der Server Update Services () unter mit der .

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.

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:

# Variablen
$DateFormat = Get-Date -format yyyyMMdd-HH-mm
$Logfile = "D:\Logs\wsus-bereinigung-$DateFormat.log"

# WSUS Bereinigung durchführen
Invoke-WsusServerCleanup -CleanupObsoleteUpdates -CleanupUnneededContentFiles -CompressUpdates -DeclineExpiredUpdates -DeclineSupersededUpdates | Out-File $Logfile

# Mail Variablen
$MailSMTPServer = "EX01.domain.local"
$MailFrom = "administrator@domain.local"
$MailTo = "edv@domain.local"
$MailSubject = "${env:COMPUTERNAME} Bereinigung $DateFormat"
$MailBody = Get-Content $Logfile | Out-String

# Mail versenden
Send-MailMessage -SmtpServer $MailSMTPServer -From $MailFrom -To $MailTo -subject $MailSubject -body $MailBody -Encoding Unicode

Photo by Reza Namdari on Unsplash
Icon by icons8

Als werbefreie Website freuen wir uns über jede Unterstützung durch euch. Spende deinen individuellen Beitrag an uns.

Neueste Beiträge

Neueste Kommentare

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

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert