Windows 7: Sysprep counter reset

Sysprep ist eine sehr nützliche Funktion wenn man VMs vom Template ableitet. Die neue VM wird durch den Sysprep Vorgang wieder in eine Art Urzustand zurückversetzt. So z.B. der Computername, die Domäne, das Profil des lokalen Administrator, sowie die SID.

Zu Problemen kann es kommen wenn man die abgeleitete VM wiederum zum Template verwandelt und davon erneut VMs ableitet. Denn es gibt einen Sysprep Counter, der diesen Vorgang dreimal zulässt. Spätestens nach der dritten Template Generation könnte folgende Fehlermeldung auftreten:

Date Time, Error [0x0f0073] SYSPRP RunExternalDlls:Not running DLLs; either the machine is in an invalid state or we couldn’t update the recorded state, dwRet = 31

Date TimeFehler [0x0f0073] SYSPRP RunExternalDlls:Not ausführen DLLs; entweder der Computer befindet sich in einem ungültigen Zustand oder konnte nicht aktualisieren wir den aufgezeichneten Zustand DwRet = 31

Um dies zu vermeiden muss man sicher stellen, daß der sysprep counter nicht nach jeder Ableitung hochgezählt wird. Dies ist entweder mit der SkipRearm Option von Sysprep möglich, oder man präpariert die VM, welche Template werden soll.

Template vorbereiten

Man bereitet ein Batchfile mit folgendem Inhalt vor und legt es im root von Laufwerk C ab.

reg load HKLM\MY_SYSTEM “%~dp0Windows\System32\config\system”
reg delete HKLM\MY_SYSTEM\WPA /f
reg unload HKLM\MY_SYSTEM

Anschliessend bootet man die VM in Windows Recovery environment (WinRE), indem man beim Reboot F8 drückt. Im Startbildschirm wählt man “Computer reparieren”. Anschliessend wählt man das Tastatur Layout.

Nach Eingabe von User und Passwort gelangt man ins Hauptmenü und wählt dort “Eingabeaufforderung”.

Dort startet man auf der Commandozeile das zuvor abgelgete Batchfile. Anschliessend wird die VM neu gestartet. Sie ist nun ohne Schlüssel und bereit für Sysprep. Die Warnung, daß dieses System nicht echt sei kann man zunächst ignorieren. In der Ableitungskonfiguration wird dieser VM wieder ein gültiger Schlüssel zugeordnet.

Links

Microsoft TechNet – Funktionsweise von Sysprep

Microsoft TechNet – SkipRearm

My Digital Life – How to Reset Available Remaining Rearm Count in Windows 7