Поиск по моему блогу

Самосборные окна. WAIK: боекомплект для создания своей сборки Windows

Самосборные окна. WAIK: боекомплект для создания своей сборки Windows Сергей «grinder» Яремчук (grinder@ua.fm, tux.in.ua) Сборками Windows сегодня удивить трудно. Их используют все – и обычные пользователи, и администраторы. Но одно дело – брать то, что есть, впоследствии дорабатывая под свои нужды и рискуя попасть на карандаш, а другое - сделать все самому. Тем более, варезная сборка – это нарушение лицензии и не приемлема в серьезной корпоративной среде. Пакет автоматической установки WAIK Для создания своего образа системы Microsoft предлагает пакет автоматической установки Windows (AIK), который можно свободно скачать с сайта корпорации. Его основная задача - упрощение установки, настройки и развертывания всего семейства операционных систем Windows, включая Vista и Windows Server 2008. Для выполнения этих задач в комплект WAIK входят все необходимые инструменты: * среда Microsoft Windows Preinstallation Environment (WinPE) - небольшая загрузочная версия Vista, которая может загружаться в ОЗУ и является основой при развертывании ОС; * инструменты WAIK, основными из которых являются ImageX и Диспетчер образов системы Windows; * Windows Deployment Services (WDS) – новая версия среды централизованного развертывания, заменившая RIS; * подробная техническая документация. Консольная утилита ImageX позволяет монтировать и редактировать WIM (Windows Image) образы ОС, а «Диспетчер образов» (Windows System Image Manager) – это удобный инструмент для создания файлов ответов в новом формате. Файлы ответов содержат описания основных настроек, позволяя максимально автоматизировать процесс установки Windows. Новичок? Начни знакомство с процессом создания своего дистрибутива с чтения официальной документации! Она очень подробна, и ее достаточно, чтобы разобраться в большинстве возникающих на первых порах вопросов. В зависимости от ОС, которую планируется развертывать, следует подбирать и версию WAIK. В нашем случае - это «Пакет автоматической установки (AIK) для Windows Vista с пакетом обновления 1 (SP1) и Windows Server 2008».
При закачке выбираем русскоязычный вариант. Обслуживающий компьютер, на который будет установлен пакет Windows AIK, может работать под управлением любой версии Windows, начиная с WinXP SP2. Самое главное - самостоятельная сборка своего дистрибутива при помощи WAIK не будет нарушением лицензии. Более того, без него не обойтись, если нужно массовое развертывание систем при помощи службы WDS (Windows Deployment Services). Естественно, речь идет не о варезе, а только об использовании лицензионных компонентов! Для удобства некоторых настроек может понадобиться программа nLite (www.nliteos.com). Она поддерживает все окна (до Vista) и позволяет при помощи графических меню упростить интеграцию в дистрибутив пакетов обновлений, драйверов, устройств, а также произвести первоначальную настройку служб и многое другое. Записываем образ на DVD-диск и устанавливаем WAIK, выбрав пункт «Установка Windows AIK», после чего следуем указаниям мастера установки. По умолчанию все компоненты будут скопированы в C:\\Program Files\\Windows AIK. Учитывай, что для WAIK потребуется около 1.1 Гб свободного места (если места недостаточно, мастер сразу же предупредит). Также место потребуется для драйверов, патчей, программ, полученного ISO-образа и временных файлов. После установки в меню «Пуск» появится соответствующий пункт, в котором мы находим ссылки на документацию и некоторые утилиты. Консоль, вызываемая при помощи «Утилиты командной строки Windows PE», включает пути к различным командам WAIK. В ней мы будем производить основные действия. Здесь же есть ссылка для запуска «Диспетчера образов системы Windows» (Windows System Image Manager, Windows SIM). Работаем с образом Чтобы изменить имеющийся образ, смонтируй его при помощи ImageX и отредактируй. Хотя кому-то, возможно, покажется, что проще это сделать с помощью Windows SIM :). Для начала создаем каталог, куда впоследствии будем монтировать образ, например, D:\\Temp. Помни, что подключать WIM-файл желательно только в разделе с файловой системе NTFS. Это позволит не обращать внимания на 2 Гб барьер и предотвратит возможную потерю данных/атрибутов (например, права доступа) при использовании FAT32. Теперь переходим в каталог Sources на DVD-диске и копируем файл install.wim на жесткий диск. Открываем консоль WinPE и монтируем образ в D:\\Temp: PETools> imagex /mountrw d:\\install.wim 1 d:\\temp Mounting (RW): [d:\\install.wim, 1] -> [d:\\temp] Параметр /mountrw позволяет монтировать образ в режиме чтение-запись. Когда нужно просто просмотреть файлы внутри образа, без их редактирования, используем /mount. Утилита поддерживает и ряд других параметров: чтобы их увидеть, достаточно ввести imagex без дополнительных ключей. Добавив /?, узнаем больше по выбранному параметру. Образ можно подключить только в WinXP SP2, Win2k3 SP1 или Vista. Весь процесс «общения» с WIM-образом происходит при помощи драйвера фильтра WIM FS (Windows Imaging File System Filter). Только после его установки в смонтированный образ можно будет заходить через «Проводник» для просмотра, копирования, вставки или изменения образов томов. Нужный драйвер уже входит в комплект WAIK. Для его установки переходим в каталог Tools\\x86 (или ia64, в зависимости от версии Vista), выбираем файл wimfltr.inf и в контекстном меню – пункт «Установить». Еще один момент, требующий пояснения, - это цифра «1» в команде. Дело в том, что в образе Vista и Win2k8 содержится несколько версий системы, отличающихся друг от друга набором функций. Этой цифрой мы и задаем вариант ОС, с которым будем работать. Чтобы узнать нужный номер, необходимо использовать ключ /INFO команды imagex. PETools> imagex /INFO d:\\install.wim … Windows Vista BUSINESS Windows Vista HOMEBASIC Как видим, номеру 1 соответствует версия Business, 2 – HomeBasiс и т.д. Теперь, перейдя в каталог, в который смонтирован образ, ты увидишь обычную структуру файлов, принятую в Vista - Program Files, Windows… Кстати, не забудь активировать опцию показа скрытых и системных файлов. Для интеграции в образ доступных драйверов, обновлений и языковых пакетов (в формате MSU) используется команда peimg. Процесс очень прост. Например, драйвера интегрируются при помощи ключа /inf. Первым делом сохраняем все inf-файлы в один каталог (например, d:\\driver), а затем даем команду: PETools> peimg /inf=d:\\driver\\*.inf /image=d:\\temp\\windows В результате будут внедрены все драйвера, находящиеся в исходном каталоге. Хотя можно, конечно, устанавливать каждый драйвер отдельно. Файлы MSU интегрируются в образ несколько иначе. Для начала при помощи expand распаковываем MSU-файл. Команда выглядит так: «expand.exe <путь к MSU> -F:* <итоговый каталог>». Параметр \'-F\' указывает на файлы, которые нужно извлечь из архива. Он позволяет использовать регулярные выражения. В нашем примере будут извлечены все файлы. Например: PETools> expand Windows6.0-KB957055-x86.msu -F:* d:\\update В результате выполнения команды в каталоге d:\\update получим ряд файлов: cab, xml и текстовый. Теперь импортируем полученные cab-файлы: PETools> peimg d:\\temp\\windows /import=d:\\update\\Windows6.0-KB957055-x86.cab После этой команды обновления импортированы, но не установлены. Для их установки следует использовать параметр /install: PETools> peimg /install=Windows6.0-KB957055-x86.cab d:\\temp\\windows Вместо полного имени пакета можно использовать регулярные выражения, в этом случае будут установлены все пакеты, попадающие под описание. Повторяем эти действия для каждого обновления. Проверить список обновлений можно при помощи параметра /list: PETools> peimg /list /image=d:\\temp\\windows Исполняемые файлы распаковать нельзя, поэтому устанавливать их нужно при помощи файла ответов, речь о котором пойдет ниже. После того, как внесены все изменения, следует размонтировать образ, указав при помощи ключа /commit на необходимость сохранения всех изменений: PETools> imagex /unmount /commit d:\\temp Тем, кому лениво вводить команды, могу порекомендовать графическую утилиту GImageX (www.autoitscript.com/gimagex), являющуюся надстройкой над ImageX. В GImageX реализованы все необходимые функции по работе с WIM-образом - монтирование, размонтирование, получение информации и прочее. Еще одна свободно распространяемая программа - Vista Update Integrator (www.winvistaside.de/downloads/systemtools) - позволяет в удобном виде интегрировать в WIM образ драйвера, обновления, языковые пакеты, а также создавать загрузочные ISO. Для ее установки требуется Microsoft .NET Framework 3.5. Создаем файл ответов Итак, образ у нас уже есть, но его использование никакого выигрыша пока не дает. Пользователю, как и ранее, придется отвечать на вопросы, задаваемые системой по ходу установки. Чтобы максимально автоматизировать процесс, нужно создать файл ответов, в котором задать различные параметры установки, в том числе и сведения о ключе продукта, разделах, учетных записях, настройках IE и т.д. После этого будет возможна полностью автоматическая установка системы. В предыдущих версиях Windows приходилось работать с несколькими типами файлов ответов. Используемые при развертывании Vista XML-файлы только на первый взгляд кажутся менее понятными, – на самом деле они устроены более логично, нежели их текстовые предшественники. Большую часть установок можно разместить в одном файле ответов Unattend.xml. В подкаталоге Samples, который находится в каталоге, где установлен WAIK, можно найти несколько примеров таких файлов. Информация о настройках для конкретного образа хранится в бинарных clg (Windows catalog) файлах. Пример такого файла можно подсмотреть в каталоге Sources установочного диска. Вполне естественно, что новые форматы потребовали и новых инструментов. Для создания файла ответов и clg-файлов Vista на замену «Диспетчеру установки» (Setup Manager) пришел «Диспетчер образов» (Image Manager). Итак, приступаем к созданию нужных файлов. Вызываем «Диспетчер образов», затем в меню «Файл» – пункт «Выбрать образ Windows» (Windows Image) и указываем на редактируемый ранее install.wim, находящийся на жестком диске. В появившемся диалоговом окне выбираем нужный образ. Последует запрос на создание clg-файла каталога, связанного с образом; подтверждаем нажатием «Да», после чего образ будет смонтирован. Этот процесс занимает некоторое время, по окончании которого в окне «Диспетчера образов» появятся компоненты выбранной системы. Теперь щелкаем «Файл – Новый файл ответов» (New Answer File). Если диспетчер найдет ассоциированный файл ответов, последует запрос на его сохранение. В панели «Файл ответов» (Answer File) появятся подразделы Components и Packages. В Components находим встроенные приложения Vista, которые можно выбирать при установке системы (IE, Media Player и т.д.). Здесь уже находится несколько элементов (windowsPE, offlineServicing, generalize, specialize, auditSystem, auditUser и oobeSystem). А Packages содержит все, что не входит в поставку системы: драйвера, обновления, языковые пакеты, которые можно подключить к образу. По умолчанию дополнительных пакетов в образе нет. Параметры доступных компонентов и пакетов можно увидеть в панели «Образ Windows» (Windows Image). Обрати внимание, что некоторые из них имеют подэлементы. Если отметить любой из объектов, в окне «Свойства» появятся доступные для редактирования настройки – в зависимости от выбранного элемента они будут отличаться. К сожалению, кроме «Краткого руководства по построению файлов ответов», документации больше никакой нет, и четкого описания по всем возможным настройкам не приведено. При выборе некоторых пунктов в выпадающем списке и в строке внизу показывается список допустимых значений. Учитывая большое количество возможных настроек, далее пройдемся лишь по самым интересным из них. Настройка параметров Windows Чтобы избавить пользователя от ввода лицензионного ключа, во время установки раскрываем список подэлеметов в x86_Microsoft-Windows-Setup (далее в имени следует несколько цифр, которые отличаются в зависимости от версии). Но если сразу перейти к свойствам, то мы увидим, что изменение параметров невозможно. Чтобы изменить настройки, вызываем контекстное меню, в котором выбираем пункт «Add Setting to Pass 4 specialize» (для некоторых компонентов он может быть другим). Можно добавлять сразу всю ветку параметров или отдельные подпункты. Последнее удобнее, так как впоследствии можно легко разобраться, что уже было изменено. Добавленный, но не измененный параметр вызовет предупреждение при проверке правильности файла ответов, а это затрудняет его анализ. После этого действия выбранный параметр появится в панели «Файл ответов». Находим UserData, затем опять раскрываем и отмечаем ProductKey. В окне свойств, в строке Key, вводим серийный номер, а параметр WillShowUI при помощи раскрывающегося списка устанавливаем в Never. Новые настройки отмечаются жирным шрифтом. Возвращаемся в UserData и в AcceptEula ставим True – теперь при установке лицензионное соглашение будет приниматься автоматически. В XML-файле появится такая запись: xxxx-xxxx-xxxx-xxxx OnError true В параметрах FullName и Organisation указываем имя пользователя и организацию. Если требуется автоматическая разметка диска, переходим в DiskConfiguration. Сначала следует добавить новый диск, выбрав в контекстном меню пункт «Вставить новый Disk». После этого появится подпункт Disk. Затем отмечаем CreatePartitions и в контекстном меню выбираем пункт «Добавить новый CreatePartitions». И уже в нем настройкой пунктов Extend, Order, Size и Type указываем параметры раздела. Аналогично добавляем и другие разделы. Настройка параметров IE производится в компоненте x86_Microsoft-Windows-InternetExplorer. Переносим его при помощи контекстного меню в «Файл ответов», как описано выше. В корневом меню можно настроить блокировку всплывающих окон, параметр UserAgent и т.д. Здесь, опять же, несколько подвкладок. Домашняя страница, открываемая по умолчанию, настраивается в StartPages в параметре StartPageUrl. Просто вводим сюда предпочитаемый URL. Количество пакетов в Packages зависит от версии Vista. Открыв эту ветку, ты увидишь несколько групп: FeaturePack, Foundation, LanguagePack и Product. Группа Foundation является основой для установки Vista, а в Product находим пакет, который отвечает за версию, которая будет установлена. Переносим выбранные группы в файл ответов, щелкнув в контекстном меню пункт «Добавление к файлу ответов» (Add to Answer File), и приступаем к редактированию. Самым интересным является x86_Microsoft-Windows-Foundation-Package. Например, выбрав InboxGames, можно отключить все или некоторые встроенные игры (для этого просто меняем флажок с Enabled на Disabled). А еще – настроить IIS, включить некоторые компоненты (например, telnet) и многое другое. Чтобы добавить в образ новый пакет, драйвер или команду, нужно выбрать пункт «Вставка» и указать на файл, который следует установить. Именно отсюда в будущую систему можно добавить программы и дополнения, поставляемые в виде исполняемых файлов. Командная строка выполняется в контексте SYSTEM или администратора с повышенными правами, в зависимости от текущего этапа настройки: * windowsPE (настройка Windows) – контекст SYSTEM; * auditSystem – контекст SYSTEM; * auditUser – администратор с повышенными правами; * specialize – контекст SYSTEM; * oobetSystem – контекст SYSTEM. Выбираем «Вставка - Синхронная команда», этап настройки oobeSystem и вводим команду, используя шаблон. Например, systemdrive%\\Hotfix\\Windows6.0-KB936330-X86-wave1.exe. Не забываем создать в образе каталог Hotfix и положить туда нужный файл. После добавления в поле Description вносим описание. В XML-файле запись будет выглядеть так: %systemdrive%\\Hotfix\\Windows6.0-KB936330-X86-wave1.exe/Q 2 Hotfix Если таких файлов много, удобнее прописать к ним путь в текстовом файле и указать на него установщику, использовав нехитрую конструкцию вида: cmd /c \"FOR %i IN (C D E F G H I J K L N M O P Q R S T U V W X Y Z) DO IF EXIST %i:\\AppsRoot.txt SETX AppsRoot %i: -m\" Обновлять версии ПО и добавлять новые программы в этом случае намного проще. Обязательно прогоняем установку, чтобы убедиться, что все проги ставятся. Другой вариант: позволить пользователю самому выбирать, что ставить, а что нет. Для этого применяем программы а-ля BS Post Installer (см. oszone.net/2985_3). Для проверки правильности файла ответов выбери «Сервис - Проверка файлов ответов» (Validate Answer File). Если будут обнаружены ошибки, последует внятная подсказка во вкладке «Сообщения – Проверка». По окончании работы сохраняем файл ответов: для этого в меню выбираем пункт «Сохранить файл ответов» (Save Answer File). Хорошо изучи его структуру, тогда, чтобы в дальнейшем добавить параметр-другой, не придется прибегать к услугам «Диспетчера образов» – достаточно вручную скопировать имеющуюся запись как шаблон. Готовые файлы ответов у сборщиков – это тайна за семью печатями, хотя в интернете можно найти несколько готовых примеров. Теперь перезаписываем имеющийся системный диск, добавив к нему измененный WIM-файл и положив в корень диска файл ответов (как вариант, при установке можно использовать файл ответов с внешнего USB-устройства). Тут используем программу oscdimq.exe из комплекта WAIK. Копируем установочный диск Vista в каталог d:\\Vista, заменяем новый WIM-файл внутри и добавляем файл ответов. После чего даем в консоли команду: PETools> оscdimg -u2 -bd:\\Vista\\Boot\\etfsboot.com -lMyVista -h d:\\Vista d:\\MyVista.iso Флаг \'-u2\' задает для образа файловую систему UDF, \'-b\' указывает на загрузочный файл, \'-l\' выставляет метку, а \'-h\' позволяет включить в образ все скрытые файлы и каталоги. Для создания образов можно также использовать программу Vista Update Integrator или vLite (www.vlite.net). Надо сказать, эта программа не видит WAIK, установленный не на «свое» место. Заключение Несмотря на то, что процесс создания своей версии системы выглядит немного сложновато, с опытом все операции станут понятны, а готовые файлы настроек, скрипты и шаблоны еще больше упростят сборку дистрибутива. INFO Файл Oobe.xml используется для хранения текстов и изображений, служащих для настройки экрана приветствия Windows, центра начальной настройки и регистрации для доступа в интернет. Пример файла находится в каталоге Samples. Подробно о настройке Windows Deployment Services читай в X_06_2007. WWW * Программа vLite (www.vlite.net) позволяет создавать загрузочные образы Windows. * Программу GImageX можно скачать по адресу www.autoitscript.com/files/gimagex/gimagex.zip. * Vista Update Integrator (www.winvistaside.de/downloads/systemtools) - очень удобный инструмент, позволяющий интегрировать в WIM-образ драйвера, обновления, языковые пакеты, а также создавать загрузочные ISO. * Vista Unattended XML Creator создает файлы ответов онлайн - dc412.org/unattend.php. * Описание работы oobeSystem (Out-of-Box-Experience) - technet.microsoft.com/en-us/library/cc748990.aspx. * Список полезных программ ты найдешь на сайте OSzone - oszone.net/2985_3. * Пакет Windows AIK можно свободно скачать с сайта корпорации Microsoft. WARNING Все действия необходимо производить в разделе с файловой системой NTFS.
Reblog this post [with Zemanta]

Комментариев нет:

Реклама от BigBN