Jak uruchomić SysPrep po aktualizacji systemu Windows

Wystąpił dziwny błąd podczas próby wykonania Sysprep w już zainstalowanym systemie, którego planujesz użyć do utworzenia obrazu referencyjnego do wdrożenia systemu Windows 10 za pomocą System Center Configuration Manager 2012 R2. Podczas uruchamiania SysPrep nieoczekiwanie pojawia się błąd:

Sysprep nie mógł zweryfikować instalacji systemu Windows. Aby uzyskać więcej informacji, zobacz plik dziennika% Windows% \ System32 \ Sysprep \ Panther \ setupact.log. Po rozwiązaniu problemu sprawdź ponownie instalację za pomocą Sysprep.

W angielskiej wersji systemu Windows 10 błąd jest podobny:

Program Sysprep nie mógł sprawdzić poprawności instalacji systemu Windows. Aby uzyskać szczegółowe informacje, przejrzyj plik dziennika w% Windows% \ System32 \ Sysprep \ Panther \ setupact.log. Po rozwiązaniu problemu użyj narzędzia Sysprep, aby ponownie sprawdzić poprawność instalacji.

Otwórz i przeanalizuj błędy w pliku dziennika narzędzia Sysprep setupact.log. Następująca linia natychmiast przyciąga wzrok:

01.08.2016, 10:22:51, Błąd [0x0f0036] SYSPRP spopk.dll :: Sysprep nie będzie działał na uaktualnionym systemie operacyjnym. Sysprep można uruchomić tylko na niestandardowej (czystej) instalacji wersji systemu Windows.

Tj. błąd wyraźnie stwierdza, że ​​zabronione jest uruchamianie Sysprep w systemach, które zostały uaktualnione z poprzedniej wersji systemu Windows. W naszym przypadku tak właśnie jest: jeden system został uzyskany przez aktualizację z Windows 7 do Windows 10, drugi przez aktualizację z Windows 8.1. Rzeczywiście, zgodnie z artykułem bazy wiedzy KB828287: Microsoft nie obsługuje używania Sysprep do tworzenia obrazów instalacji Windows, które zostały zaktualizowane w trybie aktualizacji (instalowanie dodatku SP nie jest uważane za aktualizację). Windows zezwala na sysprep tylko w systemach wynikających z „czystej instalacji”. Czy to naprawdę w tym przypadku trzeba ponownie zainstalować system od zera?

Udało mi się znaleźć prostsze rozwiązanie. Korzystając z Monitora procesów z filtrem dla procesu sysprep.exe i porównując czysty i „zaktualizowany” Windows 10, byłem w stanie uzyskać listę kluczy rejestru, które Sysprep sprawdza podczas uruchamiania, aby ustalić, czy ten system jest czysty lub „zaktualizowany”. Co należy zrobić, aby zresetować „zaktualizowany” znacznik systemowy dla systemu Windows 10, który jest sprawdzany przez narzędzie Sysprep (w przypadku innych wersji systemu operacyjnego wszystko jest takie samo):

Jest ważne. Technika opisana poniżej nie jest oficjalnie obsługiwana przez Microsoft i nie ma gwarancji, że w przyszłości nie będzie problemów z uzyskanym w ten sposób systemem.
  1. Otwórz Edytor rejestru (regedit.exe)
  2. Idź do oddziału HKEY_LOCAL_MACHINE \ SYSTEM \ Setup \
  3. Usuń zagnieżdżoną gałąź Upgrade (jeśli istnieje) i parametr o nazwie Upgrade 
  4. W oddziale HKEY_LOCAL_MACHINE \ SYSTEM \ Setup \ Status \ SysprepStatus ustaw kluczowe wartości Cleanupstate  równe 7
  5. Pozostaje zrestartować komputer i spróbować ponownie uruchomić SysPrep

Wskazówka. W przypadku systemu Windows 10, aby SysPrep działał, konieczne było dodatkowo usunięcie wszystkich niestandardowych nowoczesnych aplikacji, które zostały indywidualnie zainstalowane (nie w trybie udostępniania) ze sklepu Microsoft Store przez użytkowników systemu.

Można to zrobić, usuwając wszystkie profile użytkowników (jeśli dotyczy), całkowicie usuwając wszystkie aplikacje Metro dla wszystkich użytkowników (metoda nie jest zalecana), lub usuwając takie aplikacje ręcznie. Ostatnia opcja jest implementowana w następujący sposób:

  1. Otrzymamy listę wszystkich zainstalowanych aplikacji Metro w profilach wszystkich użytkowników (interesują nas tylko pakiety ze statusem Zainstalowane): Get-AppxPackage -AllUser | Format-List -Property PackageFullName, PackageUserInformation
  2. I kolejno usuwając je w ten sposób: Usuń-AppxPackage -Package . Lub tak: Remove-AppxProvisionedPackage -Online -PackageName