Что такое Sysprep в Windows Server и для чего он используется?

«Что такое Sysprep в Windows Server и для чего он используется?» — вопрос из категории Виртуализация, который задают на 23% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Sysprep (System Preparation Tool) — это системная утилита Windows, используемая для подготовки эталонного образа (golden image) операционной системы к массовому развертыванию, особенно в средах виртуализации и автоматизированного деплоя.

Основная задача: Удалить из установленной Windows уникальные системные идентификаторы и данные, чтобы при развертывании клона образа не возникало конфликтов в сети.

Что конкретно делает Sysprep (/generalize):

  1. Удаляет Security Identifier (SID) компьютера и генерирует новый при следующем запуске.
  2. Сбрасывает активацию Windows (переводит в состояние, требующее повторной активации).
  3. Очищает данные об оборудовании и драйверах, делая образ более универсальным.
  4. Удаляет пользовательские профили и события журналов (по умолчанию).
  5. Запускает режим OOBE (Out-of-Box Experience) при следующей загрузке, где можно задать имя компьютера, пароль администратора и другие параметры.

Типичный сценарий использования в DevOps/Virtualization:

  1. Установить и настроить Windows Server в виртуальной машине (установить роли, обновления, приложения).
  2. Запустить Sysprep для очистки уникальных данных.
  3. Выключить ВМ и преобразовать ее диск в шаблон (template) в VMware vSphere, Hyper-V или системе управления облаком.
  4. Развертывать новые идентичные ВМ из этого шаблона.

Команда запуска:

C:WindowsSystem32sysprepsysprep.exe /generalize /oobe /shutdown /unattend:C:unattend.xml
  • /generalize – запускает процесс очистки.
  • /oobe – переводит систему в режим первоначальной настройки.
  • /shutdown – выключает компьютер после завершения.
  • /unattend: – указывает файл ответов для автоматической настройки новых экземпляров.

Важно: После Sysprep исходная система больше не может быть использована — она должна быть развернута как новый экземпляр. Нельзя применять Sysprep к доменным контроллерам.