Windows (Server) Updates zeitgesteuert durchführen mit PSWindowsUpdate
Updates unter Windows und Windows Server lassen sich normalerweise nur manuell starten. Nach den Updates kann maximal eine Neustart-Zeit festgelegt werden. Mit einem zusätzlichen Powershell-Modul kann das allerdings auch die Windows Aufgabenplanung übernehmen.
Hierzu muss Powershell (mit Administrator-Rechten) gestartet werden. Powershell muss in der Version 5 oder höhrer vorhanden sein (kann mit $PSVersionTable getestet werden). Nun gibt man folgenden Befehl ein, um PSWindowsUpdate zu installieren:
Install-Module -Name PSWindowsUpdate -Force
Um alle Befehle von PSWindowsUpdate anzeigen zu lassen, gibt man diesen Befehl ein:
Get-Command -Module PSWindowsUpdate
Um verfügbare Updates anzeigen zu lassen:Get-WindowsUpdate -MicrosoftUpdate -Verbose
Updates installieren und automatisch neustarten:
Install-WindowsUpdate -MicrosoftUpdate -AcceptAll -AutoReboot
Mit diesen Befehlen kann man nun ein Powershell-Skript erstellen und mit der Windows Aufgabenplanung zeitgesteuert ausführen. Öffnet einen Text-Editor, kopiert folgendes rein und speichert es als .ps1-Datei ab (z.B. windowsupdate.ps1):
Install-Module PSWindowsUpdate -Force
#installiert die neueste Version.
Get-WindowsUpdate -MicrosoftUpdate -Verbose
Install-WindowsUpdate -MicrosoftUpdate -AcceptAll -AutoReboot
#installiert die Updates und startet neu.
Nun startet ihr die Aufgabenplanung und erstellt eine neue Aufgabe:
Als Trigger stellt ihr eine gewünschte Zeit ein:
%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe
Bei den Argumenten kommt "-command "Pfad zur ps1.Datei" rein, z.B.:
Unter älteren Windows-Versionen (z.B. Windows Server 2016) kann das Modul nicht direkt installiert werden, weil die vorhandene Powershell-Version nicht über TLS 1.2 agiert. Hier kann man für die aktuelle Powershell-Sitzung TLS 1.2 aktivieren:
Fertig!
Kommentare
Kommentar veröffentlichen