установка обновлений через MDT при захвате образа

Установить обновления перед захватом эталонного образа очень просто: через Windows Update или WSUS, а потом вручную запускать sysprep, монтировать capture .iso или иной вариант. У меня же была другая задача: в процессе Build and Capture через MDT подключиться к локальному WSUS, который существует в компании, и установить обновления оттуда, т.е. провести установку обновлений в полностью автоматическом режиме.

Во-первых, в процессе скачивания обновлений можно получить ошибку.

BDD.log и ZTIWindowsUpdate.log:

INSTALL — f49a461d-9fa0-484b-9db5-b14e9a3d9bd3 — Security Update for Windows 7 for x64-based Systems (KB2922229) — 1 MB

INSTALL — 9a5132e4-ca62-4f66-bbe2-d920e6252678 — Update for Microsoft PowerPoint 2010 (KB2837579) 32-Bit Edition — 14 MB

INSTALL — 952c45be-a107-4dae-8ccb-b3c91688bcd2 — Cumulative Security Update for Internet Explorer 8 for Windows 7 for x64-based Systems (KB2936068) — 16 MB

Scan complete, ready to install updates. Count = 181

Begin Downloading…

ZTI ERROR — Unhandled error returned by ZTIWindowsUpdate: Object doesn’t support this property or method (438)

Этот баг пришёл в MDT 2013 с MDT 2012 Update 1. Для исправления бага со скачиванием обновлений нужно исправить в файле ZTIWindowsUpdate.wsf строку:

result(» & UpdateResult.GetUpdateResult(item).ResultCode & «) : » & UpdatesToDownload.Item(item).Title, MSIT_LogType

на

result(» & UpdateResult.GetProgress.GetUpdateResult(item).ResultCode & «) : » & UpdatesToDownload.Item(item).Title, MSIT_LogType

Во-вторых, мой WSUS работал через https.

Для настройки обновлений нужно экспортировать корневой сертификат:

1

Next-Next-задать имя сертификата-Next-Finish.

В свойствах DeploymentShare задаём адрес WSUS вида WSUSServer=http://имя сервера:порт или https, как в моём случае:

2
В Task Sequence включаем шаги Windows Update (Pre-Application Installation) и Windows Update (Post-Application Installation). Импорт сертификата через командную строку и запуск certutil.exe в процессе установки не получался, поэтому я решил импортировать сертификаты через создание приложения и простейший батник:

certutil.exe -addstore Root \\server\h$\Applications\root.cer
certutil.exe -addstore TrustedPublisher \\server\h$\Applications\root.cer

Соответственно, перед этим я поместил экспортированный сертификат в общую папку. Создание приложения затруднений не вызывает, в качестве строки запуска указываем созданный .bat-файл:

3

И добавляем установку этого приложения в Task Sequence:

4

Если же WSUS работает по http, то достаточно просто указать его адрес в свойствах DeploymentShare и активировать два шага в Task Sequence.

Leave a Reply