Windows 10 не работает sysprep

Как запустить SysPrep после апгрейда Windows

Столкнулся со странной ошибкой при попытке выполнить SysPrep на уже установленной системе, которую планировались использовать для создания эталонного образа для развертывания Windows 10 средствами System Center Configuration Manager 2012 R2. При запуске SysPrep неожиданно появляется ошибка:

В английской версии Windows 10 ошибка аналогичная:

Откроем и проанализируем ошибки в файле журнала утилиты Sysprep setupact.log. В глаза сразу бросается следующая строка:

Т.е. ошибка явно сообщает, что запрещено выполнять Sysprep на системах, которые были обновлены с предыдущей версии Windows. В нашем случае это как раз так: одна система была получена путем апгрейда с Windows 7 до Windows 10, вторая через обновление с Windows 8.1. И действительно, согласно статье в базе знаний KB828287: Microsoft не поддерживает использование Sysprep для создания образов для инсталляций Windows, которые были обновлены через режим апгрейда (установка SP при этом не считается апгрейдом). Windows разрешает выполнять только sysprep на системах, полученных в результате «чистой установки». Неужели в таком случае придется переустанавливать систему с нуля?

Мне удалось найти более простое решение. С помощью Process Monitor с фильтром для процесса sysprep.exe и сравнения чистой и «обновленной» Windows 10 удалось получить список ключей реестра, которые проверяются Sysprep при запуске на предмет определения чистая ли эта система или «обновленная». Итак, что нужно сделать, чтобы сбросить маркер «обновленной» системы для Windows 10, который проверяется утилитой Sysprep (для других версий ОС все аналогично):

  1. Открыть редактор реестра (regedit.exe)
  2. Перейди в ветку HKEY_LOCAL_MACHINE\SYSTEM\Setup\
  3. Удалить вложенную ветку Upgrade (если есть) и параметр с именем Upgrade
  4. В ветке HKEY_LOCAL_MACHINE\SYSTEM\Setup\Status\SysprepStatus установить значений ключа CleanupState равным 7
  5. Осталось перезагрузить компьютер и попробовать выполнить SysPrep еще раз

Совет. В случае с Windows 10, чтобы SysPrep заработал, дополнительно пришлось удалить все нестандартные Modern приложения, которые индивидуально (не в режиме provision) были установлены из Microsoft Store пользователями системы.

Это можно сделать, удалив все профили пользователей (если применимо), полностью удалив все Metro приложения для всех пользователей (не рекомендуемы способ), либо удалив такие приложения вручную. Последний вариант реализуется так:

  1. Получим список всех установленных Metro приложений в профилях всех пользователей (нас интересуют только пакеты со статусом Installed): Get-AppxPackage -AllUser | Format-List -Property PackageFullName,PackageUserInformation
  2. И последовательно удалив их таким образом: Remove-AppxPackage -Package

. Или так: Remove-AppxProvisionedPackage -Online -PackageName

Сбой Sysprep после удаления или обновления приложений Microsoft Store, которые включают встроенные изображения Windows

В этой статье обсуждается проблема, возникают при удале или обновлении предварительного приложения Microsoft Store с помощью Microsoft Store и запуска sysprep на компьютере.

Оригинальная версия продукта: Windows 10 — все выпуски
Исходный номер КБ: 2769827

Введение

Sysprep — это средство для ИТ-администраторов, которые хотят подготовить установку Windows для дублирования, аудита и доставки клиентов. Руководство в этой статье предназначено для использования агентами поддержки и ИТ-специалистами. Если вы домашний пользователь, сталкивающийся с проблемами при использовании приложений Microsoft Store, см. в руб. Исправление проблем с приложениями из Microsoft Store в Windows 10.

Некоторые приложения Microsoft Store включают встроенные windows 10 и Windows 8 изображения. К этим приложениям относятся, в частности, приложения «Почта», «Карты», «Обмен сообщениями», «Bing», «Путешествия» и «Новости». Эти приложения известны как готовые приложения. На изображении постановочены готовые приложения, которые планируется установить для каждого пользователя образа Windows с первого логотипа. Помимо встроенных приложений можно загрузить собственные приложения Microsoft Store в образ Windows, не публикуя их в Microsoft Store. Пакеты с боковой загрузкой можно загрузить с помощью команд онлайн или автономного обслуживания, доступных в DISM.exe или с помощью модуля Appx DISM PowerShell.

Симптомы

Рассмотрим следующие сценарии:

  • Вы создаете настраиваемый справочный компьютер Windows 10, который необходимо с помощью sysprep и захвата.
  • Вы хотите удалить некоторые из приложений Microsoft Store (пакеты) с Appx этого справочного компьютера.
  • Вы dism -online /Remove-ProvisionedAppxPackage /PackageName:\

запустите, чтобы отсутвить Appx пакеты.

При запуске операции sysprep в этом сценарии операция может привести к сбойу при следующей ошибке:

Средство подготовки системы 3.14
При попытке sysprep компьютера произошла смертельная ошибка

  • У вас есть существующее изображение Windows, а несколько приложений Microsoft Store загружаются на изображении боковую загрузку.
  • Вы хотите удалить некоторые пакеты с боковой загрузкой с изображения и Appx настроить его далее.
  • Вы загрузите на справочный компьютер и запустите одну из следующих команд PowerShell, чтобы удалить подготовка Appx пакета:
    • Remove-AppxProvisionedPackage-PackageName

    При запуске операции sysprep в этом сценарии операция может привести к сбойу при следующей ошибке:

    Средство подготовки системы 3.14
    При попытке sysprep компьютера произошла смертельная ошибка

    • Создается эталонное изображение Windows 10.
    • Подключайтесь к магазину Windows 10, а затем обновляете встроенные приложения Microsoft Store с помощью Microsoft Store.

    При запуске операции sysprep в этом сценарии операция может привести к сбойу при следующей ошибке:

    Средство подготовки системы 3.14 Произошла смертельная ошибка при попытке с помощью sysprep компьютера

    Кроме того, в setupErr.log можно заметить следующие записи об ошибках:

    , Пакет SYSPRP ошибки был установлен для пользователя, но не был

    предусмотрен для всех пользователей. Этот пакет не будет функционировать должным образом на изображении sysprep.
    , Ошибка SYSPRP не удалось удалить приложения для текущего пользователя: 0x80073cf2.
    , Код выхода SYSPRP потока RemoveAllApps 0x3cf2.
    , Ошибка [0x0f0082] SYSPRP ActionPlatform::LaunchModule: Сбой произошел при выполнении «SysprepGeneralize» из C:\Windows\System32\AppxSysprep.dll; dwRet = 0x3cf2
    , Ошибка SYSPRP ActionPlatform::ExecuteAction: ошибка при выполнении действия; dwRet = 0x3cf2
    , Ошибка SYSPRP ActionPlatform::ExecuteActionList: Ошибка при выполнении действий; dwRet = 0x3cf2
    , Ошибка SYSPRP SysprepSession::Execute: Ошибка при выполнении действий из C:\Windows\System32\Sysprep\ActionFiles\Generalize.xml; dwRet = 0x3cf2
    , Ошибка SYSPRP RunPlatformActions:Failed при выполнении действий SysprepSession; dwRet = 0x3cf2
    , Ошибка [0x0f0070] SYSPRP RunExternalDlls:Ошибка произошла при запуске реестра sysprep DLLs, приостановив выполнение sysprep. dwRet = 0x3cf2
    , Ошибка [0x0f00a8] Ошибка SYSPRP WinMain:Hit при обработке sysprep обоблизует внутренних поставщиков; hr = 0x80073cf2

    Причина

    У Sysprep есть дополнительный поставщик, который добавлен в Windows 10 для очистки пакетов и Appx обобщения изображения. Поставщик работает только в том случае, если пакет является пакетом для каждого пользователя или Appx все-пользователем.

    • Пакет для каждого пользователя означает, что пакет установлен для определенной учетной записи пользователя и не доступен для Appx других пользователей компьютера.
    • Пакет all-user означает, что он был предварительно заданной в образ, чтобы все пользователи, которые используют это изображение, могли Appx получить доступ к приложению.

    Если все-пользовательский пакет, который был готов к изображению, был вручную удален из изображения, но не удален для конкретного пользователя, поставщик столкнется с ошибкой при очистке этого пакета во время sysprep. Поставщик также сбой, если все-пользовательский пакет, который был предварительно в изображении, был обновлен одним из пользователей на этом справочном компьютере.

    Решение

    Чтобы устранить эту проблему, удалите пакет для пользователя, который работает sysprep, а также удалите подготовка. Для этого выполните указанные ниже действия.

    Чтобы не допустить обновления приложений в Microsoft Store, отключайте подключение к Интернету или отключайте автоматические обновления в режиме аудита перед созданием изображения.

    Запустите Import-Module Appx PowerShell.

    Выполнить Import-Module Dism.

    Запуск Get-AppxPackage -AllUser | Where PublisherId -eq 8wekyb3d8bbwe | Format-List -Property PackageFullName,PackageUserInformation .

    • В выходе этого последнего комлета проверьте пользователей, для которых пакет отображается как Установленный. Удалите эти учетные записи пользователей с справочного компьютера или войдите на компьютер с помощью этих учетных записей пользователей. Затем запустите cmdlet в шаге 4, чтобы удалить Appx пакет.
    • В этой команде перечислены все пакеты, опубликованные Корпорацией Майкрософт и установленные любым пользователем этого справочного компьютера. Поскольку компьютер должен быть sysprepped, мы предполагаем, что эти профили пользователей больше не требуют пакета.
    • Если у вас есть приложения, которые вручную относятся к другим издателям, запустите следующую команду, чтобы перечислить их:
      Get-AppxPackage -AllUser | Format-List-Property PackageFullName,PackageUserInformation

    Запуск Remove-AppxPackage -Package \

    Удалите подготовка, заняв следующие cmdlet:

    Если вы попробуете восстановиться после проблемы обновления, вы можете перенацедить приложение после того, как выполните эти действия.

    Проблема не возникает, если вы обслуживаете автономное изображение. В этом случае подготовка автоматически очищается для всех пользователей. Это включает пользователя, который управляет командой.

    Дополнительные сведения

    Дополнительные сведения о том, как добавлять и удалять приложения, см. в этой информации:

    Исправление ошибки: Sysprep не удалось проверить установку Windows

    Утилита Sysprep используется для подготовки эталонного образа Windows и его обезличивания, удаляя из системы все уникальные идентификаторы (SID-ы, GUID-ы), что необходимо для его корректного разворачивания в корпоративной сети. В некоторых случаях, когда вы выполняете команду sysprep /generalize /oobe /shutdown при создании образа Windows 10, программа Sysprep.exe может вернуть следующую ошибку:

    Sysprep не удалось проверить установку Windows. Дополнительные сведения см. в файле журнала %Windows%\System32\Sysprep\Panther\setupact.log. После устранения проблемы снова проверьте установку с помощью Sysprep.

    Sysprep was not able to validate your Windows installation. Review the log file at %windir%\system32\Sysprep\panther\setupact.log for details. After resolving the issue use Sysprep to validate your installation again.

    Чтобы исправить ошибку «Sysprep не удалось проверить установку Windows», перейдите в каталог C:\Windows\System32\Sysprep\Panther и откройте с помощью любого текстового редактора (например, блокнота) файл с журналом утилиты sysprep — setupact.log.

    Начните просматривать содержимое файл setupact.log снизу вверх и ищите строку с ошибками. В зависимости от найденной ошибки, вам нужно будет выполнить определенные действия для ее исправления. Рассмотрим возможнее ошибки Sysprep:

    Отключите BitLocker для запуска Sysprep

    Error SYSPRP BitLocker-Sysprep: BitLocker is on for the OS volume. Turn BitLocker off to run Sysprep. (0x80310039)
    Error [0x0f0082] SYSPRP ActionPlatform::LaunchModule: Failure occurred while executing ‘ValidateBitLockerState’ from C:\Windows\System32\BdeSysprep.dll
    If you run manage-bde -status command it will show the following:

    Disk volumes that can be protected with
    BitLocker Drive Encryption:
    Volume C: [OSDisk]

    Эта ошибка в основном возникает на планшетах и ноутбуках с Windows 10, поддерживающих шифрование InstantGo (на основе BitLocker.) Чтобы исправить эту ошибку нужно отключить шифрование для системного тома с помощью следующей команды PowerShell:

    Disable-Bitlocker –MountPoint “C:”

    Не удается удалить современные приложения у текущего пользователя

    Если в журнале setupact.log встречаются ошибки:

    Error SYSPRP Package AppName_1.2.3.500_x64__xxxxxxxxx was installed for a user, but not provisioned for all users. This package will not function properly in the sysprep image.
    Error SYSPRP Failed to remove apps for the current user: 0x80073cf2.

    Это означает, что вы вручную устанавливали приложения (Modern / Universal Apps) из Windows Store, или некорректно удалили предустановленные приложения.

    Попробуйте удалить данный пакет с помощью команд PowerShell:

    Get-AppxPackage –Name *AppName* | Remove-AppxPackage
    Remove-AppxProvisionedPackage -Online -PackageName AppName_1.2.3.500_x64__xxxxxxxxx

    Кроме того, чтобы Microsoft Store не обновлял приложения, необходимо отключить ваш эталонный компьютер с образом Windows 10 от Интернета и отключить автоматическое обновление в режиме аудита перед тем как вы создаете образ.

    Также удалите все локальные профили пользователей.

    Sysprep не работает на обновленной ОС

    В том случае, если вы обновили операционную систему в вашем образе до Windows 10 с предыдущей версии (Windows 8.1 или Windows 7 SP1), то при попытке выполнить Sysprep в журнале setupact.log должна содержаться следующая ошибка:

    Error [0x0f0036] SYSPRP spopk.dll:: Sysprep will not run on an upgraded OS. You can only run Sysprep on a custom (clean) install version of Windows.

    Microsoft не рекомендует выполнять Sysprep образа, который был проапгрейжен с предыдущей версии Windows, рекомендуется использовать чистую установку Windows 10. Однако есть способ обойти это требования.

    1. Откройте редактор реестра и перейдите в раздел HKEY_LOCAL_MACHINE\SYSTEM\Setup.
    2. Найдите параметр с именем Upgrade и удалите его.
    3. Затем перейдите в ветку HKEY_LOCAL_MACHINE\SYSTEM\Setup\Status\SysprepStatus и измените значение ключа CleanupState на 7.
    4. Тем самым, вы заставите Sysprep считать, что данная копия Windows установлена в режиме чистой установки.

    Перезагрузите компьютер и запустите Sysprep еще раз.

    Читайте также:  Как подключить airport express для windows
Оцените статью