Wir zeigen Ihnen, wie Sie über einen lokalen Linux-Server alle Windows-PCs mit einem Schlag updaten - und dabei gehörig Bandbreite sparen.

Windows besitzt eine automatische Update-Funktion, über die sich das System stets aktuell halten lässt. Allerdings erfordert das Windows-Update teilweise Downloads im Umfang von mehreren Hundert MB für jeden PC, den Sie aktualisieren müssen. Für Besitzer einer schnellen Internetverbindung ist das kein Problem.

Anders sieht es bei geringer Bandbreite oder einem Volumentarif aus: Hier ist es praktisch, die Updates nur einmal herunterladen zu müssen.

1. Updaten mit WSUS Offline Update

Das Tool WSUS Offline Update lädt Updates für Windows Vista, 7, 8, Office 2007, 2010 und 2013 sowie bei Bedarf auch das .Net-Framework, C++-Laufzeitbibliotheken und Aktualisierungen für den Windows-Defender. Die Aufgabe des Tools ist vor allem, direkt nach einer Windows-Neuinstallation alle verfügbaren Updates auch ohne Internetverbindung von einer DVD oder einem USB-Stick zu installieren. WSUS Offline Update lässt sich jedoch auch über das Netzwerk zur Aktualisierung mehrerer PCs verwenden. Verwenden Sie auf jedem Windows-PC, den Sie über WSUS Offline Update aktualisieren wollen, unter „Systemsteuerung -> Windows Update -> Einstellungen ändern -> Wichtige Updates“ die Option „Nach Updates suchen, aber den Zeitpunkt zum Herunterladen und installieren manuell festlegen“. Sie erhalten dann eine Benachrichtigung, wenn noch Updates fehlen.


2. Samba-Freigabe einrichten

Für die benötigte Windows-Netzwerkfreigabe brauchen Sie einen Samba-Server, den Sie unter Ubuntu oder Linux Mint mit

sudo apt-get update sudo apt-get install samba-common samba

nachinstallieren können. Öffnen Sie danach die Samba-Konfigurationsdatei als root in einem Editor:

sudo gedit /etc/samba/smb.conf

Im Abschnitt „[global]“ fügen Sie am Ende die Zeile

guest account=nobody

ein. Falls die Option „map to guest = bad user“ nicht bereits vorhanden ist, tragen Sie diese Zeile ein.

Erstellen Sie am Ende der Datei einen neuen Abschnitt mit der Bezeichnung „[wsus]“ und einem Inhalt wie in der Abbildung. Hinter „path“ geben Sie das Verzeichnis an, in dem Sie WSUS Offline Update einrichten wollen. „hans“ ersetzen Sie jeweils durch den Gruppen- beziehungsweise User-Namen des administrativen Hauptbenutzers. Speichern Sie die Datei, und führen Sie im Terminal folgende Befehle aus:

smbpasswd -a hans smbpasswd -an nobody

„hans“ ersetzen Sie durch Ihren Linux-Benutzernamen und vergeben dann ein Samba-Passwort. „nobody“ ist der Gastbenutzer ohne Passwort.

Mit dieser Konfiguration haben der eingetragene Linux-Benutzer und die Gruppe „adm“ Schreibzugriff auf die Freigabe. Andere Benutzer und Gäste dürfen Dateien nur lesen und ausführen. „force create mode = 665“ sorgt dafür, dass von Windows aus erstellte Dateien lesbar und ausführbar sind. Der anonyme Zugriff ist nur für die Auto-Reboot-Funktion von WSUS Offline nötig (-> Punkt 4).

Update-Downloader: Das Script „DownloadUpdates.sh“ lädt die Windows-Updates herunter. System, Sprache und Optionen lassen sich über Parameter festlegen.
Update-Downloader: Das Script „DownloadUpdates.sh“ lädt die Windows-Updates herunter. System, Sprache und Optionen lassen sich über Parameter festlegen.

3. WSUS Offline Update installieren

Laden Sie WSUS Offline Update über http://download.wsusoffline.net herunter, und entpacken Sie die ZIP-Datei in den in -> Punkt 2 freigegebenen Ordner, beispielsweise „/wsus“. Ändern Sie mit

sudo chown -R hans:hans /wsus sudo chmod -R 775 /wsus

den Eigentümer und die Zugriffsrechte. Verwenden Sie Benutzernamen und Pfade entsprechend Ihrer Konfiguration. Für den Update-Download unter Linux ist zusätzliche Software erforderlich, die Sie mit folgendem Befehl nachinstallieren:

sudo apt-get install cabextract md5deep xmlstarlet

Starten Sie dann den Updater mit

bash /wsus/sh/DownloadUpdates.sh

Das Bash-Script zeigt ein einfaches Menü, womit Sie Systeme und Anwendungen festlegen, die Sie aktualisieren möchten. Am Ende sehen Sie eine Zusammenfassung der gesetzten Parameter. So laden Sie etwa mit

bash /wsus/sh/DownloadUpdates.sh w63-x64 deu /dotnet /msse /wddefs

Updates für Windows 8.1 64 Bit, das .Net-Framework, Microsoft Security Essentials und Defender-Virendefinitionen. Die Befehlszeile verwenden Sie in einem Cronjob für den automatischen Download, den Sie mit crontab -e erstellen. Tippen Sie in den Editor etwa folgende Zeile ein, wenn die Ausführung jeden Tag um 22:10 Uhr starten soll:

10 22 * * * /bin/bash /wsus/sh/DownloadUpdates.sh w63-x64 deu /dotnet /ms

Sollten Sie Updates für Windows-8.1 64- und 32 Bit benötigen, ersetzen Sie „w63-x64“ durch „all-63“. Entsprechend gibt es für Windows 7 neben „w61“ und „w61-x64“ den Parameter „all-61“.