Wer als Administrator WSUS (Windows Server Update Services) betreut sucht schnell nach einem Weg den Updateprozess zu beschleunigen, denn ein Updatezyklus dauert in der Regel 24 Stunden. Das kann aber manchmal zu lange sein. Wird ein PC z.B. neu aufgesetzt oder ist neu eingekauft, so soll er in der Regel erst voll durchgepatched an den User übergeben werden.
Um den Updatevorgang beim WSUS 3.0 zu beschleunigen, habe ich ein Batch-Script geschrieben, das den PC veranlaßt innerhalb von 10 Minuten mit der Installation der Notwendigen Patche zu beginnen.
Zunächst müssen 2 Programme installiert werden:
Anschließend werden die Werte für den Connect mit dem WSUS-Server in die Registry geschrieben und der Agent aktiviert. Dieser sucht nun nach notwendigen Patchen. Dafür gibt man ihm ca. 4 Minuten.
Jetzt wird die Registry manipuliert und der WSUS-Dienst durchgestartet. Dadurch fühlt sich der Agent veranlaßt alle Patchpakete auf den PC herunter zu laden. Bei 100MBit dauert das ca. 1 Minute (80 Patche - 500MB).
Nach einer Pause von 5 Minuten (der Download könnte ja mal etwas haken) manipulieren wir erneut die Registry und starten wieder den WSUS-Dienst durch. Darauf hin beginnt der Dienst sofort mit der Installation der Patche.
Sind alle Patche installiert, wird der PC durchgebootet.
Manchmal ist die gewählte Wartezeit zu kurz. Gerade, wenn ein PC, der schon in WSUS erfasst ist, noch einmal neu aufgesetzt und gepatcht wird (z.B. bei Hardware- oder Softwarefehlern), verzögert sich die Erkennung etwas. Deshalb habe ich eine Schleife eingebaut, die den letzten Prozess nach 15 minuten noch einmal startet. Nach 5 durchgeführten Loops endet das Script dann mit einer Fehlermeldung und bleibt stehen. Während des testens fehlte mir die Möglichkeit das Patching zu beobachten. "Wartet der PC auf irgend etwas oder tut er schon was?", war da oft die Frage. Um das Patching sichtbar zu machen, habe ich noch ein kleines Programm (ShowUpdates.exe) geschrieben, das mir die aktuell installierten Patche (Registry Einträge) als Tooltip auf den Desktop meldet. Es kann hier heruntergeladen werden. Batch-Datei: ForceWSUS.cmd |
Soll das Script auch auf Windows 2000 angewendet werden, muss zuvor das Programm Reg.exe aus den Windows 2000 Support Tools (Cd im Ordner '\Support\Tools') in das 'C:\WINNT\system32' Verzeichnis kopiert werden. Bei Windows XP und Windows 2003 ist Reg.exe Bestandteil des Betriebssystems.
Wer lieber eine Programm hätte, um das Update anzustoßen kann sich den von mir programmierten WSUS-Helper anschauen.
Anhang | Größe |
---|---|
ShowUpdates.exe | 351.82 KB |
forcewsus.cmd | 7.9 KB |