Создание unattended дистрибутива Windows XP

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


Что такое unattended дистрибутив?

Unattended дистрибутив - это дистрибутив, процесс установки которого полностью автоматизирован, т.е. не ведёт никаких диалогов с пользователем. Слово unattended можно перевеcти как "не требующий контроля" (attend - слежение), т.е. во время установки такого дистрибутива пользователю не нужно следить за состоянием установки. Практически это выражается в отсутствии вопросов install-программы пользователю, ему не нужно во время установки нажимать "Далее", не надо вводить регистрационный ключ или русифицировать программу. Можно создать такой unattended дистрибутив XP, который не только не потребует ввода серийного номера, названия компьютера, который установит нужные приложения, драйверы, заплатки от Microsoft, автоматически импортирует нужные значения в реестр. Можно запустить установку unattended дистрибутива и спокойно уйти пить кофе. Подобный дистрибутив весьма востребован администраторами, т.к. очень сильно упрощает установку и настройку системы.


Как создать unattended дистрибутив XP?

Есть много способов. Можно создать его вручную, а можно и с помощью программ. Помочь автоматизировать установку могут nLite, Windows Unattended CD Creator, Almeza MultiSet и многие другие. Для работы понадобится только лицензионный ключ XP.

 

Прежде чем приступить к обработке дистрибутива, его нужно скопировать на жёсткий диск. Если вы работаете с дистрибутивом, в который интегрирован sp2, то скопируйте следующие файлы:

WIN51, WIN51IP, WIN51IP.SP1, WIN51IP.SP2

bootfont.bin, а также папки i386 и $OEM$. Обратите внимание, копировать нужно не содержимое папки i386, а саму папку. Маркерных файлов WIN51IP.SP1 и WIN51IP.SP2 в вашем дистрибутиве может и не оказаться - они появляются только после интеграции в него sp1 или sp2 (впрочем, файла WIN51IP.SP1 на вашем диске может и не быть - сервис-паки являются кумулятивными, так что не обязательно устанавливать SP1, прежде чем ставить SP2). Файл bootfont.bin используется для корректного отображения кириллицы во время установки.


Как сократить размер дистрибутива?

Если вы не планируете апгрейд с более старой ОС, то можете удалить WIN9XMIG, WIN9XUPG, WINNTUPG и LANG из папки 1386. Освободится 37.6 Мб. Но если вы устанавливаете локально консоль восстановления (командой winnt32 /cmdcons /dudisable), вам понадобится папка WINNTUPG. Также можно воспользоваться программой nLite, с помощью которой можно обрезать дистрибутив до не узнаваемости. С её помощью можно удалить ненужные компоненты, драйверы и многое другое. Это позволит не только сократить размер дистрибутива, но и увеличить производительность устанавливаемой системы, т.к. чем меньше драйверов висит в фоне, чем меньше записей в системном реестре, тем легче ОС. Но другая сторона монеты - то, что неграмотная работа с программой, удаление жизненно необходимых компонентов повлечёт за собой смерть ещё не родившейся системы - она просто не будет загружаться.


Что такое $OEM$ директории?

$OEM$ директория - папка в дистрибутиве, содержимое которой копируется в определённые места. $ОЕМ$ директории удобны для автоматического копирования ваших файлов на системный диск в процессе установки. Если файлы скопированы, значит, вы легко можете создать пакетные команды для исполнения различных заданий, используя переменную %systemdrive%. Например, если система была установлена на диск E:\, то переменная %systemdrive% будет автоматически преобразована в E:\. Папка $OEM$ может и не существовать на оригинальном дистрибутиве, и если вы планируете использовать $OEM$ директории, то эту папку нужно создать самостоятельно. Если в папке $OEM$ создать папки $$, $1, $Progs, то содержимое $$ попадёт в директорию Windows, $1 - в корневой каталог диска, на который устанавливается система. Содержимое папки $Progs, как вы уже догадались, попадает в директорию Program Files. Т.е. таким образом можно интегрировать в дистрибутив программы, не требующие установки, просто скопировав их в $Progs. Если в $OEM$ и создать папку E, а в ней Raznoe, то во время инсталляции создастся папка E:\Raznoe, если, конечно, диск Е:\ существует и не защищён от записи.


Как проще всего интегрировать в дистрибутив хотфиксы и драйверы?

Проще всего воспользоваться программой nLite. Эта замечательная программа позволяет интегрировать в дистрибутив хотфиксы (горячие обновления с английского) и драйверы, затрачивая минимум усилий пользователя. Драйверы надо предварительно распаковать из EXE файлов, т.к. вам нужно будет указать путь к INF файлам. С этой задачей может справиться WinRAR или 7-zip.


Что такое пакеты драйверов?

Пакеты драйверов - готовая для интеграции группа драйверов. Удобство пакетов в том, что вам не нужно искать индивидуальные драйверы - большинство из них включены в пакет. Использование драйвер-паков позволяет создать дистрибутив, который можно поставить на любой машине сразу с нужными драйверами. Их создаёт Вим Лирс (Wim Leers), известный в Сети под ником Bashrat the Sneaky.


Как интегрировать свои обои и заставки в дистрибутив?

Для интегрирования в дистрибутив обоев и заставок легче всего воспользоваться директорией %OEM%. Создайте в %OEM%.\$$ папки System32 и Web. В папку System32 скопируйте ваши заставки (скринсейверы). В папку Web скопируйте нужные вам обои.


Что такое Setup Billboards?

Setup Billboards - это окна, которые пользователь видит во время установки Windows. Теперь я расскажу, как редактировать Setup Billboards - то, что пользователь видит во время установки Windows. Я затрудняюсь перевести этот термин корректно и чётко на русский язык. Для редактирования Setup Billboards нам понадобится программа Winntbbu Editor. Теперь нужно взять библиотеку winntbbu.dll из E:\XPDVD\1386. Программа позволяет изменять текстовые сообщения, фон и многое другое. Winntbbu Editor обладает очень простым, интуитивно понятным интерфейсом, поэтому подробно о ней рассказывать не буду. Готовые Setup Billboards можно скачать с этой темы на MSFN. Примечание: WinntbbuEd не работает с winntbbu.dll для 64-битной ОС.


Как интегрировать нужные приложения в дистрибутив XP?

Для работы понадобится утилита cmdow.exe и Universal Silent Switch Finder. Программа cmdow.exe служит для сокрытия командной строки во время установки, USSF нужен для поиска ключей для запуска приложений в фоновом режиме. Чтобы интегрировать в unattended дистрибутив xp приложения, нужно сначала создать unattended дистрибутивы этих приложений. Наиболее простой способ - создать sfx архив и прописать в нём запуск установки с ключами, который выдал USSF. Сначала нужно узнать, какие ключи нужны для автоматической установки приложений. Для этого нам понадобится программа USSF. Нажмите на кнопку > и укажите путь к нужной install- программе. В поле Usage отобразятся нужные ключи. Есть много способов создания unattended дистрибутивов приложений, из них хочу отметить создание sfx архива, который после распаковки запустит install программу с нужными ключами. Рекомендую использовать Winrar, т.к. в нём этот процесс происходит намного удобнее, чем в других архиваторах, например, в 7-zip. Открываем программу, выделяем нужные файлы и папки install-программы и жмём "Добавить в архив". Во вкладке "Общие" ставим галочку на "создать SFX-архив". Именуем архив по желанию, отмечаем создание SFX и выбираем максимальный уровень сжатия. Теперь надо сконфигурировать параметры SFX. Для этого на вкладке "Дополнительно" жмём "Параметры SFX". На вкладке "Общие" указываем команду на запуск инсталлера с ключами, который выдал USSF. Просто копируем текст из поля Usage USSF (нужно убрать кавычки) в поле "Выполнить" после установки WinRAR. Переходим на вкладку "Режимы". Здесь мы указываем распаковку во временную папку (что повлечёт за собой автоматическое удаление распакованных файлов по окончании установки), скрытый режим и перезапись всех файлов. Теперь, когда дистрибутивы приложений готовы, можно приступить к интеграции их в дистрибутив. В папке $OEM$ создаём текстовый файл cmdlines.txt. Прописываем в нём следующие строчки:

[COMMANDS] "Soft.cmd"

В нём производим запуск пакетного файла Soft.cmd. Создайте Soft.cmd в папке $OEM$ и напишите в нём следующее:

cmdow @ /HID
@echo off
SET CDROM=%~d0
start /wait %CDROM%\sfx1.exe
start /wait %CDROM%\sfx2.exe
exit

Строка cmdow @ /HID запускает программу cmdow.exe, которая скрывает командную строку от глаз пользователя. Команда SET CDROM=%~d0 создаёт новую переменную - cdrom, чтобы установка велась прямо с диска, без копирования дистрибутива программы на винчестер. Команда

start /wait %CDROM%\sfx1.exe 

указывает ОС запустить sfx1.exe, а ключ wait - чтобы команды выполнялись одна за другой, иначе конфликты были бы неизбежны. Можно прописывать запуск любого количества программ.

Как сделать так, чтобы автоматически импортировались параметры реестра во время установки?

Нужно просто прописать соответствующую команду в cmdlines.txt после Commands. Например:

COMMANDS
"REGEDIT /S tweaks.reg" 

где tweaks.reg - название вашего reg файла, лежащего в папке $OEM$.

Теперь вы знаете, как создавать unattended дистрибутивы Windows XP. C ним установка XP не будет столь утомительным и нудным процессом, как раньше. В заключение дам совет - если у вас ОЗУ больше 256 Мб, то для тестирования дистрибутива лучше всего воспользоваться виртуальными машинами, это позволяет сэкономить деньги на дисках и не мучить ваш винчестер форматированием разделов. Если у вас возникли вопросы или хотите поделиться мнением - пишите мне на e-mail: UshakovAlexandr@yandex.ru.

Александр УШАКОВ

P.S. О создании unattended дистрибутива см. также в "КВ" №40/2008.

Версия для печатиВерсия для печати

Номер: 

03 за 2009 год

Рубрика: 

Software
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!
 

Комментарии

Страницы

Аватар пользователя Фархад
Спасибо авторам.

Нам это все очень нужно.

Ждем обновлений.

Спасибо.

Аватар пользователя Инкогнито
кому это нужно?
Аватар пользователя Инкогнито
многим
Аватар пользователя Инкогнито
"...кому это нужно?..." это был глубокофилософский вопрос?)

зы: статься понравилась. новичкам в самый раз

ззы: вот множество инфы по этому делу http://www.oszone.net/2747/ мож каму нить надо знать больше)

Страницы