Развертывание образов, назначенных определенным целевым машинам

Ситуация

Администратору необходимо развернуть разные эталонные образы на каждой целевой машине.

Решение

Администратор помещает образы в общий сетевой ресурс, доступ к которому возможен с каждой целевой машины.

Администратор переименовывает каждый образ в соответствии с MAC-адресом целевой машины. Образ, назначенный машине с MAC‑адресом 01-02-03-04-05-06, будет иметь имя, например: image-01-02-03-04-05-06.tib.

Администратор создает сценарий развертывания, читающий MAC-адрес целевой машины, и выбирает из общего сетевого ресурса образ с именем, соответствующим этому MAC-адресу. Сценарий может быть выполнен на любом количестве целевых машин.

Пример сценария.

setlocal
SET IMG_PATH=\\image_server\images
SET TMP_DRV_LETTER=h:
net use %TMP_DRV_LETTER% %IMG_PATH%
echo off
for /f "tokens=1-13 delims= " %%a in ('ipconfig /all') do (
IF %%a EQU Physical (
for /f "tokens=1-3 delims= " %%a in ('echo %%l') do (
IF EXIST %TMP_DRV_LETTER%\%%a.tib (
echo DEPLOYMENT IMAGE file: %%a.tib
asdcmd.exe /deploy /filename:%TMP_DRV_LETTER%\%%a.tib /harddisk:1 /target_partition:c
goto end
) ELSE (
echo THE IMAGE FILE %IMG_PATH%\%%a.tib NOT FOUND
)
)
)
)
:end
echo on
net use %TMP_DRV_LETTER% /d
wpeutil Reboot
endlocal

Что делает этот сценарий.

  1. Подключает сетевую папку, содержащую набор образов (одному образу соответствует одна целевая машина).
  2. Извлекает MAC-адрес целевой машины.
  3. Генерирует имя TIB-файла (если MAC‑адрес 01-02-03-04-05-06, имя TIB-файла должно быть 01-02-03-04-05-06.tib).
  4. Производит поиск образа с этим именем в сетевой папке.
  5. Развертывает образ, если он найден.
  6. Перезапускает целевую машину или завершает ее работу.

Переменные окружения: