1

WDS 2008 – автоматическая установка (unattended setup)

Posted by admin on 27.02.2012 in WDS, Windows 7 |

Постановка задачи

Установка и запуск сервера WDS достаточно просты. Однако, функционал и возможности сервера WDS (особенно в версии 2008 R2) довольно широки и не исчерпываются избавлением от необходимости иметь физический компактдиск с дистрибутивом и сам привод на компьютере (на нетбуках его обычно нет). Хотелось бы автоматизировать процесс установки Windows 7 на сколько это возможно, во-первых, потому что просто бесит отвечать одно и то же на одни и те же вопросы мастера установки Windows, а во-вторых, чем аникейнее процесс, тем проще поручить (доверить) его кому-нибудь другому. Ну, и, в-последних, автоматизация может тупо сократить время, необходимое для подготовки нового ПК к работе. Для начала, попробуем установить Windows 7 с помощью нашего сервера WDS и посмотрим, что нужно улучшать.

Создаем новую виртуальную машину и запускаем её. После нажатия клавиши F12 появится выбор загрузочных образов, если образов больше одного. Образ захвата лучше отключить с помощью контекстного меню, чтобы случайно его не выбрать. Тогда остается один: «Microsoft Windows Setup (x64)». Далее последовательно появляются экраны программы установки, позволяющие настроить операционную систему:
1) Выбор языка и раскладки клавиатуры для программы установки
2) Запрос пароля для доступа к серверу WDS
3) Выбор устанавливаемого образа
4) Выбор раздела жесткого диска для установки системы
через 7 минут
5) Выбор страны (региона), форматов времени и денежной единицы, раскладки клавиатуры по умолчанию
6) Имя первого пользователя и компьютера
7) Пароль для нового пользователя
8) Лицензионное соглашение
9) Настройка системы защиты
10) Время и часовой пояс
11) Параметры расположения в сети

Как правило, на все вопросы программы установки ответы будут либо одни и те же для каждого следующего ПК, либо будут меняться очень редко. Поэтому имеет смысл избавиться от лишних вопросов, а то и от всех. Для этого на сервере WDS используются файлы ответов в формате XML. Такие файлы ответов могут применяться на уровне всего сервера WDS и на уровне конкретного образа устанавливаемой операционной системы. Очевидно, что на вопросы первых трех экранов бессмысленно пытаться отвечать в файлах, применяемых к устанавливаемому образу, т.к. на этом этапе образ еще не выбран. Файлов ответов будет два. Один из них (назовем его SrvUnatt.xml) будет применяться к серверу WDS и избавит нас от первых четырех экранов программы установки, а второй (ImgUnatt.xml) — к устанавливаемому образу, избавляя от остальных вопросов. (На самом деле вполне можно обойтись и одним файлом, применив его дважды в соответствующих настройках, но здесь будет два отдельных.)

Средства

Для создания файлов ответов воспользуемся специальным средством от Microsoft.
Диспетчер образов Windows (Windows SIM) – приложение, входящее в состав WAIK (Windows Automated Installation Kit) и предназначенное для создания и управления файлами ответов автоматической установки Windows в графическом интерфейсе пользователя.
Скачиваем Windows AIK для Windows 7 (1,3 Гб)
http://www.microsoft.com/downloads/ru-ru/details.aspx?familyid=696dd665-9f76-4177-a811-39c26d3b3b34&displaylang=ru
и можно (хотя, и совсем не нужно) для комплекта — Обновление WAIK для Windows 7 SP1 (1 Мб)
http://www.microsoft.com/downloads/ru-ru/details.aspx?FamilyID=0AEE2B4B-494B-4ADC-B174-33BC62F02C5D

Устанавливаем Windows AIK на свой ПК (сервер ей не нужен). После установки в меню программ появляется группа “Microsoft Windows AIK”, а в ней — “Диспетчер образов системы Windows”. Запускаем Диспетчер образов системы Windows. На экране куча окон, плюс строка меню и еще есть панель инструментов. Что с этим делать, на первый взгляд, совсем не понятно. Сейчас разберем по шагам все необходимые действия, но ориентируясь на “программу минимум” — избавиться от лишних вопросов при установке Windows 7 с сервера WDS.

Формирование файлов ответов (Unattend.xml)

1). Прежде всего необходимо открыть образ конфигурируемой операционной системы. Предварительно лучше распаковать его в локальный каталог. Для распаковки удобно использовать архиватор 7Zip, который добавляет в контекстное меню файлов ISO пункт “Распаковать в <имя файла>”. В Диспетчере образов (WSIM) правый клик в левом нижнем окне “Образ Windows” — “Выбрать Образ Windows”. Выбираем в локально распакованном образе файл “\sources\install.wim”, в результате чего в это окно добавляется дерево с двумя ветками Components и Packages. Нам понадобится только ветка Components, причем не вся, а только те её пункты, которые начинаются с “amd64_”, потому что мы устанавливаем 64-х разрядную Windows.

2). Создаем новый файл ответов. В Диспетчере образов (WSIM) правый клик в среднем верхнем окне “Файл ответов” — “Новый файл ответов…”. В файле ответов ветка Components разбита на 7 проходов.
1 windows PE
2 offlineServicing
3 generalize
4 specialize
5 audit System
6 audit User
7 oobe System
Формирование файла ответов заключается в том, что компоненты их окна “Образ Windows” добавляются в соответствующий проход файла ответов (в окно “Образ Windows”), и в окне “Образ Windows” настраиваются необходимые параметры.

3). Первое окно программы установки, от которого мы хотим избавиться отвечает за языковые параметры. В окне “Образ Windows” правый клик по пункту “Microsoft-Windows-lntemational-Core-WinPE” и выбираем “Добавление параметра для прохода 1 windows PE”. Выбираем этот параметр в окне “Файл ответов” и справа в окне свойств задаем:
InputLocale                       EN-US
SystemLocale                    RU-RU
UI Language                      RU-RU
UserLocale                        RU-RU
Остальные параметры можно не трогать. Этих достаточно, чтобы данное окно не появилось в процессе установки Windows.

4). Далее идет Запроc пароля для доступа к серверу WDS.
В окне “Образ Windows” раскрываем ветку “Microsoft-Windows-Setup”, правый клик по параметру “WindowsDeploymentServices”, добавляем его в проход “1 windows PE”. В окне “Файл ответов” выбираем 1 windowsPE / Microsoft-Windows-Setup / WindowsDeploymentServices / Login / Credentials и задаем домен, имя пользователя и пароль для учетной записи с правом на чтение общего ресурса удаленной установки на сервере WDS.
Надо понимать, что с такими настройками с любого компьютера в локальной сети можно будет беспрепядственно воспользоваться образами, выложенными на WDS. Если речь идет о “чистой” Windows 7, то для многих случаев это вполне допустимо, т.к. ключи для корпоративного лицензирования больше не хранятся на клиенте, и, соответственно, образ не должен содержать ничего такого, что нельзя получить в общем доступе и без вашего сервера WDS.

5). Следующий экран программы установки: “Выбор устанавливаемого образа”. Настраивать этот параметр имеет смысл, если образ всего один или планируется использовать всегда один и тот же.
В окне “Файл ответов” выбираем 1 windowsPE / Microsoft-Windows-Setup / WindowsDeploymentServices / ImageSelection / InstallImage. Заполняем все три свойства.

6). Выбор раздела жесткого диска для установки системы. В окне “Образ Windows” раскрываем ветку “Microsoft-Windows-Setup”, правый клик по параметру “DiskConfiguration”, добавляем его в проход “1 windows PE”. В окне “Файл ответов” правый клик по “1 windowsPE / Microsoft-Windows-Setup / DiskConfiguration”. Выбираем “Вставить новый Disk”. В данном случае подразумевается физический жесткий диск, который на персоналках обычно один. Выбираем его и в окне свойств задаем DiskID = 0. Нумерация дисков начинается с ноля. Теперь нужно сформировать конфигурацию разделов на жестком диске. Предположительно, на персоналках будут стоять диски емкостью 300 Гб или 500 Гб. Меньшего размера уже днем с огнем не найти, а больше на типовом офисном ПК совершенно ни к чему. При установке Windows 7 без использования файлов ответов программа установки обычно автоматически создает в начале диска служебный раздел размером 100 Мб. Сделаем так же. Под системный раздел оставим 80 Гб (этого должно быть вполне достаточно с большим запасом). На остальном пространстве организуем еще один раздел для рабочих файлов пользователей. Смысл в том, что многие пользователи совершенно не заботясь о работоспособности ПК забивают “Рабочий стол” фотографиями из Египта, сериалами и прочей ерундой. В результате чего операционная система задыхается при исчерпании свободного места на системном диске. Так вот, пусть все это происходит на втором диске. Итак, получаем:
1 раздел — 100 Мб,
2 раздел (C: Syst) — 80 000 Мб,
3 раздел (D: Work) — остальное пространство
В окне “Файл ответов” правый клик по “1 windowsPE / Microsoft-Windows-Setup / DiskConfiguration / Disk[DiskID=»0″] / CreatePartitions”. Выбираем “Вставить новый CreatePartitions”. Выбираем созданный раздел и заполняем свойства:
Extend = false
Order = 1
Size = 100
Type = Primary

Аналогично создаем еще один “новый CreatePartitions”:
Extend = false
Order = 2
Size = 80000
Type = Primary
и еще один:
Extend = true
Order = 3
Size =
Type = Primary

Здесь нужно обратить внимание на следующее. В свойствах раздела либо задают “Extend = true”, либо заполняют свойство Size (в мегабайтах). Таким образом, свойство “Extend = true” означает использование всего оставшегося пространства диска. Свойство “Type“ может принимать и другие значения, но это отдельная тема.
После создания разделов делаем правый клик по 1 windowsPE / Microsoft-Windows-Setup / DiskConfiguration / Disk[DiskID=»0″] / ModifyPartitions. Выбираем “Вставить новый ModifyPartitions”. Выбираем созданную “модификацию” и заполняем свойства:
Active = true
Extend
Format = NTFS
Label
Letter
Order = 1
Partition ID = 1
Type ID

Здесь свойство “Partition ID” соответствует свойству “Order” того раздела (CreatePartitions), к которому применяются вводимые здесь свойства. А свойство “Order” для ModifyPartitions определяет относительный порядок выполнения всех ModifyPartitions. В данном случае сдля ModifyPartitions свойства “Partition ID” и “Order” будут совпадать.
Создаем еще один элемент ModifyPartitions:
Active
Extend
Format = NTFS
Label = Syst
Letter = C
Order = 2
Partition ID =2
Type ID

и еще один:
Active
Extend
Format = NTFS
Label = Work
Letter = D
Order = 3
Partition ID =3
Type ID

С дисками покончено и с первой частью процесса установки Windows 7 — тоже. В главном меню Диспетчера образов (WSIM) выбираем Сервис — Проверка файла ответов. Попутно убеждаемся, что установлена галочка напротив пункта меню Сервис — Скрыть конфиденциальные данные. Если есть ошибки — исправляем. В окне сообщения можно сделать двойной щелчек по ошибке и попасть прямо к редактированию проблемного свойства. Сохраняем файл ответов под именем SrvUnatt.xml. Сохранить его можно где угодно, важно лишь, чтобы к нему был доступ из консоли управления сервера WDS.

7). Создаем новый файл ответов и сохраняем его под именем ImgUnatt.xml.

8). Выбор форматов, расположения и языка. Добавляем в файл ответов параметр “Microsoft-Windows-International-Core” в проход “4 specialize”. Выбираем этот параметр в окне “Файл ответов” и справа в окне свойств задаем:
InputLocale                       EN-US
SystemLocale                    RU-RU
UI Language                      RU-RU
UserLocale                        RU-RU
Здесь только раскладка по умолчанию сделана для языка “Английский — США”. По-моему, это удобнее. Остальное — русское. Если все перечисленные здесь параметры заданы корректно, соответствующее окно не появится вовремя установки Windows 7.

9). При установке без файлов ответов запрашивается имя и пароль для вновь создаваемого (локального) пользователя, который автоматически попадает в группу локальных администраторов. При этом встроенная учетная запись локального администратора в Windows 7 по умолчанию отключена (видимо, из соображений безопасности). Пусть так и будет, а мы создадим нового пользователя с именем “Admin”.
Добавляем параметр “Microsoft-Windows-Shell-Setup / UserAccounts” в проход “7 oobe System”
Для локального администратора задаем пароль в параметре “7 oobeSystem / Microsoft-Windows-Shell-Setup / UserAccounts / AdministratorPassword”. Это для встроенной учетной записи. Кроме этого создаем нового пользователя. Правый клик по “7 oobe System / Microsoft-Windows-Shell-Setup / UserAccounts / LocalAccounts”, выбираем “Вставить новый LocalAccount”. Задаем для него:
DisplayName = Admin
Group = Administrators
Name = Admin
по желанию, можно задать описание.

Важно: Группа должна быть именно Administrators (по-английски), не смотря на то, что Windows считается русским. Иначе, ваш новый пользователь не будет наделен правами администратора. В параметре “/ UserAccounts / LocalAccounts / LocalAccount[Name=»Admin»] / Password” задаем для него пароль. Не беспокойтесь за пароли. При установленном флажке в меню Сервис — Скрыть конфиденциальные данные все пароли будут зашифрованы при сохранении файла.

10). Для того чтобы профили пользователей хранились не на системном диске, а на диске D:, который мы специально для этого создали, добавляем параметр “Microsoft-Windows-Shell-Setup / FolderLocations” в проход “7 oobe System”. Задаем для него свойство “Profiles Directory = D:\ProtiIes”

11). С именем компьютера ситуация следующая. Машину нужно вводить в домен. Компонент ввода в домен возможно добавить только в проход “4 specialize”, поэтому и имя компьютера нужно задавать в этом же проходе или раньше. Если его здесь не задать, то во время установки будет запрос на имя ПК, но машина НЕ будет введена в домен, даже если на экране приветствия (после окончания установки Windows 7) и будет написано: «Вход в [имя домена]», войти под доменной учетной записью не удастся, т.к. на самом деле присоединения к домену не произойдет. Задавать какое-то конкретное имя не удобно, мы же готовим установку для многократного использования. Маски здесь не работают. Можно задать только в виде звездочки “*” (без кавычек). Тогда имя для ПК будет сформировано автоматически.
Еще раз про ввод в домен. Чтобы ПК вошел в домен нужно (иначе в домен не войдет) в шаге 4 задать либо

ComputerName = *

либо

ComputerName = [конкретное имя], но тогда все имена будут одинаковые

Добавляем компонент Microsoft-Windows-UnattendedJoin в шаг “4 specialize”. Заполняем свойства в параметре “4 specialize / Microsoft-Windows-UnattendedJoin / Identification”:
Join Domain = [полное FQDN имя домена]
MachineObjectOU = OU=Centr, OU=Comp, DC=local, DC=admsoft, DC=ru

Значения свойств нужно изменить в соответствии с параметрами сети. В этом примере подразумевается, что имя домена AD = “local.admsoft.ru”, а компьютеры должны попадать в OU “Comp\Centr”. Заполняем учетные данные для присоединения к домену в параметре “4 specialize / Microsoft-Windows-UnattendedJoin / Identification / Credentials”. Для справки: до 10 ПК может ввести в домен любой пользователь домена, администратор домена может делать это неограниченно. Как настроить учетку пользователя, не являющегося администратором домена, для ввода неограниченного количества ПК в домен — отдельная тема.
С именами и паролями закончили.

12). Отключаем окно с лицензионным соглашением. Добавляем параметр “Microsoft-Windows-Shell-Setup / OOBE” в проход “7 oobeSystem”. Свойство “HideEULAPage = true”.

13). Настройка системы защиты. Здесь же в параметре “Microsoft-Windows-Shell-Setup / OOBE” в проходе “7 oobeSystem” свойство “ProtectYourPC = 1”. Это значение по умолчанию. Может быть 1, 2 или 3. Описано во встроенной справке.

14). Параметры сети. “Microsoft-Windows-Shell-Setup / OOBE” в проходе “7 oobeSystem” свойство “Network Location = Wofk”. Это для сети предприятия. Может быть еще “Home” или “Other”. Описано во встроенной справке.

15). Часовой пояс задается в “7 oobeSystem / Microsoft-Windows-Shell-Setup”, свойство “TimeZone”. Чтобы задать часовой пояс, отличный от значения по умолчанию, нужно скопировать его из реестра живой системы Windows 7. Это строковое значение, которое должно совпадать буква в букву.
Ключ реестра: [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation] Параметр «TimeZoneKeyName». Например, может быть «TimeZoneKeyName»=»Ekaterinburg Standard Time».
И рядом задаем свойство “7 oobeSystem / Microsoft-Windows-Shell-Setup / DisableAutoDaylightTime = true”.

В главном меню Диспетчера образов (WSIM) выбираем Сервис — Проверка файла ответов. Сохраняем файл. У нас получилось два файла ответов: SrvUnatt.xml —  будет применяться к серверу WDS, ImgUnatt.xml — к устанавливаемому образу.
В консоли сервера WDS правый клик по имени сервера. Выбираем “Properties”, закладка “Client”, ставим флажок “Enable unattended installation”, напротив поля для x64 архитектуры кнопка “Browse”. Выбираем файл SrvUnatt.xml. Закрываем окно свойств сервера WDS.
Открываем свойства инсталляционного образа, ставим внизу флажок “Allow image to install in unattended mode” и задаем файл ImgUnatt.xml.
На всякий случай, можно еще перезагрузить сервер WDS. Для этого в консоли WDS правый клик по имени сервера, выбираем “All Task — Restart”.

Все готово, можно проверять. Для загрузки в режиме PXE на клиенте нужно включить эту функцию в BIOSе, и в некоторых случаях приходится задавать её первый приоритет.

Примечание

Если сделать изменения в файле ответов для образа и просто скопировать его поверх уже используемого файла, то изменения НЕ применятся ко вновь устанавливаемым ПК. Перезапуск сервиса WDS тоже не помогает. Для применения изменений нужно переподключать файл ответов, т.к. на самом деле сервер WDS всякий раз копирует его к себе в специальный каталог под специальным именем.

Коротко

Microsoft-Windows-International-Core-WinPE (1 проход) — язык программы установки

Microsoft-Windows-Setup / WindowsDeploymentServices / Login (1 проход) — доступ к серверу WDS

Microsoft-Windows-Setup / WindowsDeploymentServices / ImageSelection / InstallImage (1 проход) — выбор устанавливаемогно образа

Microsoft-Windows-Setup / DiskConfiguration (1 проход) — разбивка диска и выбор раздела для установки

Microsoft-Windows-International-Core (4 проход) — язык для виндовс

Microsoft-Windows-Shell-Setup / UserAccounts / AdministratorPassword (7 проход) —  пароль встроенной учетки администратора

Microsoft-Windows-Shell-Setup / UserAccounts / LocalAccounts (7 проход) — дополнительные учетки

Microsoft-Windows-Shell-Setup / FolderLocations (7 проход) — расположение профилей пользователей

Microsoft-Windows-UnattendedJoin / Identification (4 проход) — [ComputerName = *] — ввод в домен

Microsoft-Windows-Shell-Setup / OOBE / HideEULAPage (7 проход) — скрыть лицензионное соглашение

Microsoft-Windows-Shell-Setup / OOBE / ProtectYourPC  (7 проход) — уровень защиты Windows (ставим = 1)

Microsoft-Windows-Shell-Setup / OOBE / NetworkLocation  (7 проход) — расположение в сети (ставим = Wofk)

Microsoft-Windows-Shell-Setup / TimeZone  (7 проход) — часовой пояс

1 Comment

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Copyright © 2011-2017 Сисадминские будни All rights reserved.
Любое воспроизведение материалов сайта возможно только с активной ссылкой на admsoft.ru.