захват эталонного образа

Для установки операционных систем через SCCM 2007 нам нужны образы операционной системы в формате .wim. Если с установочного диска Windows Vista/7 взять install.wim, то операционная система будет устанавливаться на D:. Это не баг, это фича. 🙂

А для Windows XP вообще не существует .wim-файла. Поэтому обычно .wim-файл получают захватом образа уже развёрнутой операционной системы. В операционную систему устанавливаются нужные обновления, приложения и она конфигурируется в соответствии с политиками IT-отдела, после чего мы получаем т.н. эталонный компьютер, с которого снимается образ операционной системы для последующего распространения на компьютеры компании.

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

Получить эталонный образ можно тремя способами:

1. Установка операционной системы и её последующий захват при помощи последовательности задач Build and Capture.

2. При помощи подготовленного диска, запустив мастер захвата в работающей операционной системе.

3. Загрузив по сети подготовленный для захвата  компьютер.

 

Build and Capture

Создаём последовательность задач:

Даём название последовательности задач и выбираем загрузочный образ:

Выбираем пакет с инсталляционными файлами операционной системы, при надобности задаём пароль локального администратора:

Вводим компьютер в рабочую группу или домен:

Указываем пакет с клиентом SCCM:

Можем установить на компьютер обновления или программы:

Далее дважды нажимаем Next и указываем место, куда будем сохранять захваченный образ:

Дважды нажимаем Next и назначаем последовательность задач на коллекцию компьютеров (вероятнее всего, это будет коллекция All Unknown Computers и загрузка по PXE). Загружаем компьютер по сети и выбираем нужный набор задач.

 

Захват образа в работающей системе

Для этого и следующего варианта захвата должно выполняться три требования:

1. Эталонный компьютер находится в рабочей группе

2. Сброшен пароль локального администратора

3. В локальной политике выключено требование сложности паролей

Создаём диск захвата:

Выбираем место для сохранения диска:

Выбираем загрузочный образ и дважды нажимаем Next:

Монтируем получаенный диск в систему:

 

В Windows Vista/7 утилита для «обезличивания» операционной системы sysprep уже присутствует в самой системе. Для Windows XP же её нужно скачать с сайта Microsoft и распаковать в C:\sysprep.

Нажимаем Next, выбираем общую папку для сохранения захваченного образа и учётные данные для подключения:

По желанию можем указать, кем создан образ:

Нажимаем Next и Finish. Sysprep обрабатывает компьютер:

Перезагружает:

Компьютер загружается в Windows PE и начинается захват образа:

 

 

Захват образа по сети

Вручную запускаем sysprep:

Создаём последовательность задач:

Выбираем загрузочный образ, дважды нажимаем Next:

По правому клику на последовательности задач выбираем Edit, добавляем шаг Set Task Sequence Variable. Определяем переменную — OSDTargetSystemRoot. Значение переменной — C:\Windows — место, куда установленна операционная система, которую нужно захватывать.

Добавляем второй шаг Capture Operating System Image и определяем место для сохранения эталонного образа:

Назначаем получившийся Task Sequence на коллекцию, включаем наш подготовленный sysprep’ом компьютер, загружаемся по PXE, выбираем нужное задание и вуаля:

23 комментария

  1. bobgreen84:

    Спалился с доменом 🙂 Sysprep для XP находится в архиве DEPLOY.CAB в папке SUPPORT\TOOLS самого дистрибутива. Из содержимого этого архива необходимо сделать пакет.

    • admin:

      Домой спешил, не заметил.:) Это моя рабочая лаба, никаких особых секретов, но всё же лучше перепрятать.
      Зачем для ХР делать пакет?

      • bobgreen84:

        Пакет Sysprep имеется ввиду. Просто хотел сделать заметку, что качать из интернета ничего не нужно.

  2. AdVv:

    Можно вопрос ?
    Касаемо введения машины в домен перед созданием эталонного образа, что это даст ?
    После обработки sysprep насколько я знаю у системы меняется SID, а на стадии развертывания образа и имя машины. Останется ли машина в домене после установки из образа, под каким именем и потребуется ли для этого пароль администратора домена ?

    • admin:

      Перед захватом образа машина должна быть выведена в рабочую группу. Как раз суть sysprep в том, чтобы очистить уникальную информацию о машине, такую, как SID, имя компьютера и т.д. Захватчик SCCM, по-моему, даже ругается и отказывается работать, если эталонная машина в домене.
      Машина вводится в домен отдельным шагом в последовательности задач, для этого указывается учётная запись, которая имеет права на ввод машин в домен.
      По умолчанию имя компьютера назначается произвольно, после ввода в домен её нужно переименовывать. Если нужно задать какое-то конкретное имя на этапе установки, то придётся играться с переменными TS, скриптами или MDT.

  3. Oleg:

    Женя, Спасибо за статью! Просто, понятно, и даже на русском! Нужно позахватывать кучу осей, а делать с нуля — реально влом, и времени нету.

  4. […] вариантах захвата эталонного образа я уже писал здесь, в т.ч. о создании последовательности задач для […]

  5. Михаил:

    Ребят подскажите плз… в чем ошибся? Хочу снять образ с машины (Windows 7) с помощью последовательность задач, подготовил машину sysprep_ом, создал последовательность задач по инструкции (OSDTargetSystemRoot и Capture Operating System Image). Но не получается, появляется ошибка 0x80070003.Вот ошибки из лога
    Expand a string: WinPE TSManager 04.12.2012 0:31:32 1280 (0x0500)
    Executing command line: osdcapturesystemimage.exe TSManager 04.12.2012 0:31:32 1280 (0x0500)
    Succeeded loading resource DLL ‘X:\sms\bin\i386\1033\TSRES.DLL’ CaptureSystemImage 04.12.2012 0:31:32 1368 (0x0558)
    Validating system for capture… CaptureSystemImage 04.12.2012 0:31:32 1368 (0x0558)
    Target OS system root is C:\Windows CaptureSystemImage 04.12.2012 0:31:32 1368 (0x0558)
    OfflineRegistry::Init(«C:\Windows») CaptureSystemImage 04.12.2012 0:31:32 1368 (0x0558)
    Loading offline registry hive «C:\Windows\system32\config\software» into HKLM\OfflineRegistry1 CaptureSystemImage 04.12.2012 0:31:32 1368 (0x0558)
    RegLoadKey( oRegKeyHKLM, sRegKey, sRegHivPath), HRESULT=80070003 (e:\nts_sccm_release\sms\framework\osdcore\offlineregistry.cpp,64) CaptureSystemImage 04.12.2012 0:31:32 1368 (0x0558)
    Failed to load «C:\Windows\system32\config\software» (0x80070003). CaptureSystemImage 04.12.2012 0:31:32 1368 (0x0558)
    LoadHive( szPathBuffer, m_sRegKeySoftware, m_oRegKeySoftware ), HRESULT=80070003 (e:\nts_sccm_release\sms\framework\osdcore\offlineregistry.cpp,186) CaptureSystemImage 04.12.2012 0:31:32 1368 (0x0558)
    Failed to load the offline SOFTWARE registry (0x80070003). CaptureSystemImage 04.12.2012 0:31:32 1368 (0x0558)
    m_oOfflineRegistry.Init(pszSystemRoot), HRESULT=80070003 (e:\nts_sccm_release\sms\framework\osdcore\offlineos.cpp,754) CaptureSystemImage 04.12.2012 0:31:32 1368 (0x0558)
    rDefaultOs.initialize(sTargetSystemRoot), HRESULT=80070003 (e:\nts_sccm_release\sms\client\osdeployment\capturesystemimage\capturesystemimage.cpp,613) CaptureSystemImage 04.12.2012 0:31:32 1368 (0x0558)
    VerifySystemForCapture(DefaultOs), HRESULT=80070003 (e:\nts_sccm_release\sms\client\osdeployment\capturesystemimage\capturesystemimage.cpp,859) CaptureSystemImage 04.12.2012 0:31:32 1368 (0x0558)
    Failed to validate for capture.
    The system cannot find the path specified. (Error: 80070003; Source: Windows) CaptureSystemImage 04.12.2012 0:31:32 1368 (0x0558)
    Finished with error code 0x80070003 CaptureSystemImage 04.12.2012 0:31:32 1368 (0x0558)
    Process completed with exit code 2147942403 TSManager 04.12.2012 0:31:32 1280 (0x0500)
    !———————————————————————————————! TSManager 04.12.2012 0:31:32 1280 (0x0500)
    Failed to run the action: ???????? ????? ???????????? ???????.
    The system cannot find the path specified. (Error: 80070003; Source: Windows) TSManager 04.12.2012 0:31:32 1280 (0x0500)
    MP server http://SCCM.rpharm.ru. Ports 80,443. CRL=false. TSManager 04.12.2012 0:31:32 1280 (0x0500)
    Setting authenticator TSManager 04.12.2012 0:31:32 1280 (0x0500)
    Set authenticator in transport TSManager 04.12.2012 0:31:32 1280 (0x0500)
    Sending StatusMessage TSManager 04.12.2012 0:31:32 1280 (0x0500)
    Setting message signatures. TSManager 04.12.2012 0:31:32 1280 (0x0500)
    Setting the authenticator. TSManager 04.12.2012 0:31:32 1280 (0x0500)
    CLibSMSMessageWinHttpTransport::Send: URL: SCCM.rpharm.ru:80 CCM_POST /ccm_system/request TSManager 04.12.2012 0:31:32 1280 (0x0500)
    Request was succesful. TSManager 04.12.2012 0:31:32 1280 (0x0500)
    Set a global environment variable _SMSTSLastActionRetCode=-2147024893 TSManager 04.12.2012 0:31:32 1280 (0x0500)
    Set a global environment variable _SMSTSLastActionSucceeded=false TSManager 04.12.2012 0:31:32 1280 (0x0500)
    Clear local default environment TSManager 04.12.2012 0:31:32 1280 (0x0500)
    Failed to run the action: Записать образ операционной системы. Execution has been aborted TSManager 04.12.2012 0:31:32 1280 (0x0500)
    MP server http://SCCM.rpharm.ru. Ports 80,443. CRL=false. TSManager 04.12.2012 0:31:32 1280 (0x0500)

    не кто с таким не сталкивался?
    За ранее спасибо.

    • admin:

      The system cannot find the path specified

      Вы правильно указали путь для сохранения образа и учётные данные для записи в шару?

  6. Alexey:

    А в 2012 SCCM SP1 эту фишку убрали или там иной порядок захвата Windows 8 образа через таск сиквенс?
    просто прописываю на 2012 аналогично 2007 и получаю ошибку
    Error Task Sequence Manager failed to execute task sequence. Code 0x80004005 TSManager
    в логе ошибки
    Failed to load «C:\Windows\system32\config\software» (0x80070003). CaptureSystemImage 08.07.2013 12:49:03 2000 (0x07D0)
    Failed to load the offline SOFTWARE registry (0x80070003). CaptureSystemImage 08.07.2013 12:49:03 2000 (0x07D0)
    Failed to validate for capture.
    The system cannot find the path specified. (Error: 80070003; Source: Windows) CaptureSystemImage 08.07.2013 12:49:03 2000 (0x07D0)
    Failed to run the action: Capture Operating System Image.
    The system cannot find the path specified. (Error: 80070003; Source: Windows) TSManager 08.07.2013 12:49:03 1896 (0x0768)
    Failed to run the action: Capture Operating System Image. Execution has been aborted TSManager 08.07.2013 12:49:03 1896 (0x0768)
    Failed to run the last action: Capture Operating System Image. Execution of task sequence failed.
    The system cannot find the path specified. (Error: 80070003; Source: Windows) TSManager 08.07.2013 12:49:03 1896 (0x0768)
    Task Sequence Engine failed! Code: enExecutionFail TSManager 08.07.2013 12:50:36 1896 (0x0768)
    Task sequence execution failed with error code 80004005 TSManager 08.07.2013 12:50:36 1896 (0x0768)
    Failed to delete directory ‘D:\_SMSTaskSequence’ TSManager 08.07.2013 12:50:37 1896 (0x0768)
    Error Task Sequence Manager failed to execute task sequence. Code 0x80004005 TSManager 08.07.2013 12:50:37 1896 (0x0768)

    • admin:

      The system cannot find the path specified

      Вы правильно указали путь для сохранения образа и учётные данные для записи в шару?

  7. Alexey:

    Да, перепроверил все еще раз, проблема начинается Failed to load «C:\Windows\system32\config\software» (0?80070003).

    CaptureSystemImage 08.07.2013 12:49:03 2000 (0x07D0)
    Failed to load the offline SOFTWARE registry (0?80070003). CaptureSystemImage 08.07.2013 12:49:03 2000 (0x07D0)
    Failed to validate for capture.

    Возможно sysprep c каким-то ключом нужно запускать?

  8. Alexey:

    да, C:\Windows.
    Если указывать D:\Windows , то другая уже ошибка
    Variable ‘OSDTargetSystemRoot’ not found in the TS Environment. Unable to find offline OS for validation.. Verify the Prepare Operating System action has run before this action
    Element not found. (Error: 80070490; Source: Windows)

  9. Sergey:

    Здравствуйте Евгений!

    Подскажите пожалуйста, каким образом осуществляется захват образа по сете в sccm 2012, в видео видел как Вы захватывали с помощью подготовленного диска Capture media, в данной статье показывается все 3 варианта, меня интересует последний, именно создание Custom Task Sequences, т.к. в 2012 я не нахожу параметра OSDTargetSystemRoot…

    Так же интересует вопрос, необходимо ли вручную запускать sysprep из под ОС, если в Custom Task Sequences есть Prepare Windows for Capture?

    Заранее спасибо за ответ, если есть ссылочка, с удовольствием ознакомлюсь.

  10. Sergo:

    Поставил винду ручками. Пытаюсь захватить образ. Сделал TS с двумя строчками

    Set Task Sequence Variable с параметром OSDTargetSystemRoot D:\Windows
    Capture Operating System Image с указанием папки для сохранения .wim

    Получаю ошибку 0x80070032

    Sysprep не делал, он обязателен?
    Что я делаю не так? Где я накосячил?

    open(), HRESULT=80070002 (e:\nts_sccm_release\sms\framework\tscore\environmentlib.cpp,337)]LOG]!>
    open(), HRESULT=80070002 (e:\nts_sccm_release\sms\framework\tscore\environmentlib.cpp,549)]LOG]!>

Leave a Reply to admin