Введение
Здесь будет описан способ формирования мультизагрузочного (multiboot) CD Unattended установки Windows XP, обладающий исключительной гибкостью. На сформированном таким способом CD, имеется возможность размещения неограниченного количества, как аппаратных конфигураций, так и пресетов для автоустановки ПО. С легкостью можно создать варианты для бухгалтерии и юридического отдела, для дизайнеров и маркетологов с разными наборами устанавливаемого ПО. Причем установка будет происходить полностью автоматически. Если набор софта определяется в самом начале, отпадает необходимость изменения его в процессе установки, как в случае с WPI, например. Справедливости ради, надо отметить, что при описываемом способе вам ничто не мешает использовать программы выбора ПО, тот же WPI.
UnaCreator
Наиболее простым способом создания подобного CD будет изменение, а вернее дополнение дистрибутива, созданного с помощью UnaCreator v1.4. Дело в том, что UnaCreator собирает немного урезанный вариант такого мультизагрузочного CD, содержащий всего два варианта установки. В остальном такой дистрибутив полностью готов для добавления необходимого количества вариантов конфигураций установки. Именно по этой причине в описании будет использоваться эта сборка.
Для получения исходного дистрибутива соберите его с помощью UnaCreator v1.4. В результате его работы в каталоге UnaCreator_v1.4, помимо существующих файлов и папки появится WXPSP2_RU.ISO и каталог CDRoot, с которым мы и будем работать.
Важно!!! UnaCreator рассчитан на работу с русской версией Windows XP.
Для английской версии и других локализованных версий нужно изменить Start.cmd, заменим в них имена каталогов и пути к ним на соответствующие.
Итак, в каталоге CDRoot\i386 уже находятся winnt.sif и winn1.sif, а также загрузчики setupldr.bin и setupld1.bin, которые обеспечивают два варианта загрузки. Пары setupldr.bin + winnt.sif и setupld1.bin + winn1.sif обеспечивают по одному варианту соответственно. Нам нужно добавить еще один или несколько вариантов.
Подготовка драйверов
Так как наша задача максимально автоматизировать процесс установки, подготовим для нашего CD небольшой пакет драйверов.
Чипсеты Intel
Начнем с чипсетов Intel. Официальные драйверы для чипсетов можно найти и загрузить по этой ссылке (текущими официальными драйверами на момент написания статьи являются 7.2.1.1003 и 6.3.0.1007). Дальше нам необходимо распаковать драйверы для дальнейшего применения. Лучше заранее подготовить каталоги для 6 и 7 версии драйверов на диске C:. Далее программу установки драйверов нужно запустить с ключами для извлечения *.inf файлов.
Setup.exe -A -PC:\Intel_7.2.1.1003
для седьмой версии и
Setup.exe -A -P C:\Intel_6.3.0.1007
для шестой. Обратите внимание на пробел после ключа –P, для 6 версии он нужен, для 7 нет. Кстати, если вам нужны драйверы только для новых машин, собранных на чипсетах начиная с 865 и более новых, достаточно взять пакет Intel inf версии 7. Шестая версия нужна для белее старых чипсетов.
Итак, в результате описанных выше действий, мы получим два каталога с драйверами, в каждом из которых будут содержаться вложенные каталоги с файлами для разных версий Windows. Так как нам нужны драйверы только для Windows XP, мы сейчас займемся подготовкой пакета для этой ОС. Процедура не отличается сложностью. В каталоге C:\Intel_6.3.0.1007 во вложенных папках нужно удалить все подкаталоги кроме XP, а драйверы из них переместить в папки с названиями чипсетов следующим образом:
- ich2XP --> ich2
- ich2-mXP --> ich2-m
- ich3-mXP --> ich3-m
- ich3-sXP --> ich3-s
- ich4XP --> ich4
- ich4-mXP --> ich4-m
и скопировать туда папку XP из каталога C:\Intel_7.2.1.1003 для ich5, ich6 и ich7. Теперь каталог C:\Intel_6.3.0.1007 переименуем в C:\I и поместим в папку C:\Ch.Осталось только упаковать ее в 7-zip sfx (обычный, не бесключевой) как ChI.exe. Для 64 битных версий Windows необходим Intel inf версии 7.
Видео Intel
Подготовку драйверов для встроенного видео Intel разберем на примере драйвера версии 14.15.0.4363, предназначенной для 32 битных версий Windows для следующих чипсетов:
- Intel(R) 855GM Chipset
- Intel(R) 865G Chipset
- Intel(R) 852GM Chipset
- Intel(R) 855GME Chipset
- Intel(R) 852GME Chipset
- Intel(R) 910GL Express Chipset
- Intel(R) 915GV Express Chipset
- Intel(R) 945G Express Chipset
- Mobile Intel(R) 915GM Express Chipset
- Mobile Intel(R) 910GML Express Chipset
- Mobile Intel(R) 915GMS Express Chipset
- Intel(R) 915G Chipset
Загрузить драйверы можно по этой ссылке Скачивать лучше ZIP архив, как наиболее подходящий для наших целей. Из распакованного архива мы просто скопируем папку Win2000 в папку C:\Gr и переименуем её в I32. Теперь упакуем каталог Gr в 7-zip sfx как GrI32.exe. Для других чипсетов можно повторить описанную выше процедуру. Важно, чтобы названия каталогов с драйвером было отличное от I32.
Видео ATI Radeon
Скачать драйверы CATALYST 5.8 для 32 битных версий Windows XP для видеокарт на базе видеопроцессоров ATI можно с официального сайта. Нам понадобится два файла: 5-8_xp-2k_dd_25203.exe (собственно Display Driver) и 5-8_xp-2k_cp_25203.exe (Control Panel). Control Panel нам понадобится чуть позднее.
Процедура извлечения драйверов из программы установки несколько отличается от описанной для драйвера Intel. Для распаковки драйвера нужно запустить файл 5-8_xp-2k_dd_25203.exe и после распаковки прервать установку.
В каталоге C:\ATISUPPORT5-8_xp-2k_dd_25203 будет находиться распакованная программа установки. Из нее нужно переместить в каталог C:\Gr с переименованием 2KXP_INF в ATI. Теперь осталось скопировать в каталог C:\GrATI файл 5-8_xp-2k_cp_25203.exe и упаковать все в 7-zip sfx, как GrATI.exe.
Так как в данной статье не преследуется цели подробного описания процесса подготовки драйверов мы на этом и остановимся. По крайней мере у нас есть готовый пакет из трех WHQL драйверов, который без проблем установится в процессе инсталляции Windows.
Подготовка пресетов ПО
Теперь нам нужно подготовить парочку пресетов для установки разных вариантов ПО.
В качестве примера возьмем Nero-6.6.0.16, перепакуем его с помощью Nero Repacking Tool v1.1a в бесключевой sfx архив для тихой установки. Подготовим два пресета.
В первом к базовому набору ПО добавим Nero, во втором добавим Nero и уберем QuickTime Alternative. Чтобы добавить Nero изменим файл RunFromCD.cmd, находящегося в каталоге CDRoot\$OEM$\$1\Temp дистрибутива, подготовленного с помощью UnaCreator, добавим в него следующие строки:
IF EXIST %CDDRIVE%\Install\Nero\Nero-6.6.0.16_all_in_one.exe REG ADD %KEY% 77 /VE /D "Nero-6.6.0.16" /f
IF EXIST %CDDRIVE%\Install\Nero\Nero-6.6.0.16_all_in_one.exe REG ADD %KEY% 77 /V 1 /D "%CDDRIVE%\Install\Nero\Nero-6.6.0.16_all_in_one.exe" /f
Сохраните файл в любом другом каталоге с тем же именем. В этом же каталоге создайте файл drivers.cmd со следующими строками:
IF EXIST %WINDIR%\CMDOW.exe cmdow @ /HID
Start /wait %SystemDrive%\D\ChI.exe x -y -ao
Start /wait %SystemDrive%\D\GrI32.exe x -y -ao
Start /wait %SystemDrive%\D\GrATI.exe x -y -ao
exit
Теперь оба файла надо упаковать WinRAR sfx с именем NeroPlus.exe и добавлением в комментарий следующих строк:
Path=%SystemDrive%\temp
SavePath
Setup=%SystemDrive%\Temp\drivers.cmd
Silent=1
Overwrite=1
Так, первый пресет готов. Сейчас подготовим второй.
Для этого просто уберем строки, определяющие установку QuickTime Alternative в RunFromCD.cmd и упакуем его и drivers.cmd в sfx архив с именем NoQTA.exe. Не забудьте добавить комментарий к архиву.
Подобным образом можно подготовить любые пресеты с нужными вам параметрами для установки приложений или драйверов. Количество пресетов ограничено только объемом CD/DVD диска.
Подготовка загрузчиков (пар *.sif + *.bin )
Для обеспечения возможности загрузки разных вариантов нам нужно подготовить пары загрузчик + файл ответов, по умолчанию это setupldr.bin и winnt.sif. Для изменения возьмем загрузчик setupld1.bin, откроем его в HEX-редакторе и заменим все winn1.sif на NPlus.sif. Можно задавать любые имена соответствующей длины, например NPlus.sif для нашего варианта с добавленным Nero и NoQTA.sif соответственно. На мой взгляд, осмысленные имена файлов предпочтительнее, чем просто цифорки. На скриншоте показано, как это сделать в HEX режиме бесплатного редактора PSPad.
Сам загрузчик можно сохранить, как NPlus.bin и второй, как NoQTA.bin и поместить их в каталог CDRoot\i386.
Подготовка файлов ответов
Файл ответов winnt.sif скопируем в каталог CDRoot\i386 под именем NPlus.sif для первого варианта и NoQTA.sif для второго. Теперь надо открыть файлы в текстовом редакторе и для файла NPlus.sif добавить/изменить параметр
[GuiUnattended]
DetachedProgram = "%systemdrive%\Temp\NPlus.exe"
Для NoQTA.sif параметр будет соответственно
[GuiUnattended]
DetachedProgram = "%systemdrive%\Temp\NoQTA.exe"
В оба файла добавим пути к папкам с драйверами в секции [Unattended], чтобы программа установки могла их найти.
OemPnPDriversPath="D\CH\Iich2;D\CH\Iich2-m;D\CH\Iich3-m;D\CH\Iich3-s;D\CH\Iich4;D\CH\Iich4-m;D\CH\IXP;DGR\I32;DGR\ATI”
Сводим всё вместе
Итак, кроме дистрибутива у нас подготовлено несколько пресетов ПО, пакет драйверов, загрузчики и файлы ответов. Настало время свести все вместе. Для этого все файлы надо разложить на свои места, собрать ISO и прожечь его на CD.
Поместите подготовленные:
Nero-6.6.0.16_all_in_one.exe в каталог CDRoot\Install\Nero
ChI.exe, GrI32.exe и GrATI.exe в CDRoot\$OEM$\$1\D
Загрузчики *.bin и файлы ответов *.sif в CDRoot\i386
Теперь можно пересобрать ISO, запустив ReBuildISO.cmd в каталоге UnaCreator_v1.4, записать образ на диск и установить любой из вариантов.
И в заключение хочется сказать, что данный метод не исчерпывается приведенными здесь вариантами. Пробуйте, экспериментируйте.