9. Автоматизация установки операционной системы

 

Автоматизация установки операционной системы

При установке операционной системы на несколько компьютеров с одина ковой конфигурацией имеет смысл создать и использовать при установке так называемый файл ответов, который будет автоматически подставлять основные параметры, такие как серийный номер, имя пользователя и т. п. Для операционных систем Windows 9 x файл ответом имеет название MSBATCH . INF . Он может быть расположен как в каталоге с дистрибутивом, так и на любом диске, доступном при запуске программы установки. При этом команда запуска установки будет выглядеть следующим образом:

A :\ SETUP . EXE A :\ MSBATCH . INF

Структура этого файла вполне обычная для Windows — это ряд разделов со строго заданными названиями, заключенными в квадратные скобки и внут ри каждого раздела — список параметров (их имена также строго определе ны) со значениями. Необрабатываемые системой комментарии предваряются точкой с запятой.

[ Version ]
signature ="$ CHICAGO $"

Это обязательный заголовок для INF -файла Windows 9 x , после него следует оставить пустую строку, а уже в следующей строке ввести заголовок первой секции, отвечающей за основные параметры инсталляции ОС:

[ Setup ]

Внутри этого раздела содержится набор параметров, управляющих непо средственно процессом установки системы и эквивалентных ответам на во просы программы SETUP , а также ряд специфических ключей, влияющих на скорость установки ОС, задать которые можно только с помощью файла MSBATCH . INF . Если какой-либо параметр не прописан явным образом, то используется значение по умолчанию. Поскольку мы ставим своей задачей полностью автоматизировать инсталляцию Windows , то прописываем ниже следующие параметры:

  • Express = 1
    Значение 1 — полностью автоматическая установка, программа установки не задает никаких вопросов, значение 0 — полуавтоматическая установка, при которой пользователю разрешается изменять параметры, заданные по умолчанию;
  • NoDirWarn = 1
    Значение 1 — установка операционной системы в имеющуюся папку Windows без предупреждения, значение 0 — подтверждение выбора папки пользователем (по умолчанию);
  • InstallDir = C :\ WINDOWS
    Указывается путь к каталогу, куда будет установлена операционная сис тема, по умолчанию это — C :\ WINDOWS ;
  • ebd = 0
    Значение 0 — блокирует создание загрузочной дискеты, значение I — разрешает (по умолчанию);
  • ChangeDir = 0
    Значение 0 — блокирует возможность изменения каталога, в который бу дет установлена Windows (по умолчанию), значение 1 — разрешает;
  • OptionalComponents = 1
    Значение 1 — разрешает произвольный выбор компонентов ОС (по умолчанию), значение 0 — все компоненты определяются типом уста новки системы, диалог выбора компонентов не выводится;
  • сср=о
    Значение 0 — блокирует поиск предыдущей версии Windows , значение 1 — поиск будет вестись (по умолчанию);
  • CleanBoot = 1
    Значение 1 — отключает возможность обновления уже существующей на диске версии Windows , производится чистая установка, значение 0 — разрешает обновление (по умолчанию);
  • Display =0
    Значение 0 — блокирует на время установки вывод на экран любых диа логовых окон, значение 1 — разрешает вывод (по умолчанию);
  • InstallType =3
    Указывается тип установки: значение 0 — минимальная, значение 1 — обычная (по умолчанию), значение 2 — на переносной ПК, значение 3 — выборочная;
  • DevicePath = 1
    Значение 1 — разрешает программе установки искать не входящие в состав Windows INF -файлы драйверов устройств в папке с дистрибутивом, это позволяет интефировать все нужные драйверы прямо в дистрибутив, значение 0 — запрещает поиск внешних драйверов (по умолчанию);
  • Uninstall = 0
    Значение 0 — при наличии предыдущей версии Windows в случае обнов ления не будет создаваться архив системных файлов для отмены обнов ления, значение 1 — пользователь выбирает, сохранять возможность уда ления Windows или нет (по умолчанию), 5 — автоматически создается архив;
  • ProductKey =" XXXXX - XXXXX - XXXXX - XXXXX - XXXXX "
    CD - Key вашего дистрибутива;
  • showEula =0
    Значение 0 — не выводить лицензионное соглашение, значение 1 — вы водить (по умолчанию);
  • TimeZone =" Russian "
    Установка временной зоны;
  • NoPrompt 2 Boot = 1
    Значение 0 — перезагрузка с разрешения пользователя (по умолчанию), значение 1 — перезафузка без запросов к пользователю.

Это основные параметры раздела [ setup ]. Далее следует еще один не менее важный раздел, в котором задаются региональные установки, и для России в нем должны быть следующие параметры:

[System]
MultiLanguage=Cyrillic
Locale=L0419
SelectedKeyboard=KEYBOARD_00000419

Установка указанных параметров обязательна, поскольку полноценную под держку кириллицы в англоязычных версиях Windows можно установить только на этапе инсталляции. Но тут имеется один весьма неприятный нюанс. В любых вариантах Windows 98 и в локализованной русской версии Windows ME проблем с автоматической установкой кириллических парамет ров нет. А вот панъевропейская Windows ME почему-то никак не хочет вос принимать региональные установки из MSBATCH . INF , так что систему та ким способом "обмануть" не удастся. Если вы все-таки являетесь поклонником англоязычных Windows , то возможны два пути решения про блемы: либо никогда не выбирайте полностью автоматическую установку — всегда задавайте параметр Express = o в разделе [ setup ], чтобы иметь воз можность выставить регион и временную зону вручную. Либо разархивируй- те один файл под названием PRECOPY 1. CAB из дистрибутива Windows во временную папку, после чего найдите в ней файлы LOCALE . INF , MULTILNG . INF и CONTENT . INF . В первом из них нужно заменить строки:

Default_Locale="L0409" Resource_Locale="00000409"

на

Default_Locale="L0419" Resource_Locale="00000419"

Во втором файле — строку

De fault_Keyboard="KEYBOARD_0 0000409"

на

Default _ Keyboard =" KEYBOARD _00000419"

И в третьем файле измените строку

Default_Content="244"

на

Default_Content="203"

Теперь нужно снова создать файл PRECOPY 1. CAB , но уже с измененными файлами — в этом поможет любой архиватор, способный работать с архива ми CAB . В крайнем случае, просто поместите эти три файла в папку с дист рибутивом Windows — к ним программа установки обратится в первую оче редь вместо архива PRECOPY 1. CAB . В результате во время инсталляции Windows по умолчанию будет выбран регион — "Россия", после чего с под держкой кириллицы при полностью автоматической установке проблем в дальнейшем не будет.

В этом же разделе задаются и еще несколько менее интересных установок, например, разрешение экрана, которое будет применяться на завершающей стадии установки:

DisplChar =16,1024,768

В случае если вы указали выборочную установку без выбора компонентов вруч ную, вам следует обратиться к следующему разделу, который выглядит так:

[ OptionalComponents ]

" Портфель "=0
" Калькулятор "=1
" Фоновые рисунки "=0
" Игры "=1
" Imaging "= l и т . д .

Как видите, раздел представляет собой обычный список, в котором значе ние 1 говорит о необходимости установки компонента, а значение 0 — на оборот, о том, что данный компонент устанавливать не следует.

Чтобы программа установки не пыталась установить драйвер для принтера, что весьма характерно для Windows 95, следует создать пустой раздел [ Printers ], который не содержит ни одного параметра. Также следует за дать имя пользователя и название организации:

[ NameAndOrg ]
Name =" Имя пользователя "
Оrg =" Название организации "
Display =0

Параметр Display , точнее его значение, равное 0, блокирует вывод на экран монитора диалогового окна, предлагающего выбрать имя пользователя.

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

[ Network ]
ComputerName =" Имя компьютера в сети"
Workgroup =" Имя рабочей группы" Description " Notebook "

Как ни странно это звучит, но компания Microsoft сама предусмотрела воз можность редактирования описываемого файла, поместив специальную программу в каталоге Win 98\ Tools \ Reskit \ Batch на диске с дистрибутивом. В каталоге же Win 98\ Tools \ Reskit \ Infinst имеется еще одна полезная про грамма. Она позволяет включать в дистрибутив драйверы сторонних производителей, интегрируя INF -файл каждого драйвера в файл MSBATCH . INF и копируя необходимые файлы в папку с дистрибутивом Windows . Правда, если драйвер основан не на INF -файле, а является исполняемой програм мой (яркий пример — Detonator ' bi для видеоплат от NVIDIA ), то такой но мер с ним не пройдет — придется запускать его вручную уже после установ ки системы. При работе с этой программой достаточно указать два пути — к папке с файлами драйвера и к папке с дистрибутивом Windows , после чего программа внесет нужные изменения в MSBATCH . INF . Естественно, дист рибутив при этом должен быть на жестком диске, чтобы к нему можно было дописать файлы драйвера.

Для операционной системы Windows XP файл ответов обычно имеет назва ние UNATTEND . TXT . Для более детального изучения настроек и ручной правки файла ответов читайте файл REF . CHM , который находится в DEPLOY . CAB . Если вы самостоятельно записываете установочный компакт-диск, то переименуйте файл ответов в WINNT . SIF . Для Windows NT /2000 также возможно создание файла ответов, но в этих системах он является мало функциональным.