Самоучитель
системного администратора

6.6. Автоматизация установки программного обеспечения

Системному администратору постоянно приходится вводить в эксплуатацию новые рабочие места, а так же модернизировать существующие. Администратору обычно необходимо либо полностью подготовить компьютер (начиная от установки операционной системы и заканчивая прикладными программами и всеми обновлениями), либо только установить прикладные программы (если компьютер поставлен с OEM-версией Windows).

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

Развертывание Windows 7 при помощи WAIK

Для автоматизации разворачивания Windows 7 вендор создал пакет WAIK — Windows Automated Installation Kit. Этот пакет свободно доступен для загрузки с сайта Microsoft и поможет создать образы системы для последующего автоматического разворачивания по требованиям конкретного рабочего места.

Следует сразу сказать, что такой подготовительный процесс для создания образов Windows 7 весьма трудоемок. В результате на практике применяют его только в тех организациях, где разворачивание Windows является повседневной задачей или же в случае массовой миграции на новую операционную систему.

Поэтому читателя, решившего внедрить данную технологию, отошлем к онлайновой технической библиотеке изготовителя.

Клонирование систем

Самый быстрый способ подготовить новую систему к эксплуатации — сделать ее копией уже существующей, т. е. клонировать. Клонирование представляет собой процесс воспроизведения данной системы на другом рабочем месте. Клонированная станция будет иметь аналогичную версию операционной системы, те же установленные (и соответствующим образом настроенные) прикладные программы пользователей и т. п.

К клонированию прибегают при обновлении аппаратной части рабочего места (новый системный блок), при создании новых рабочих мест и т. д.

Существуют различные способы клонирования. Новый образ можно скопировать на жесткий диск, загрузившись со сменного носителя и перенеся данные со сменного устройства или по сети с сервера, если обеспечить удаленную загрузку новой рабочей станции. Первый вариант более прост в настройке и использовании, второй — более гибок, поскольку на сервере можно хранить образы для различных вариантов установки, но и требует установки серверной части.

Администратор выбирает тот вариант, который оптимальным образом подходит для его системы.

Подводные камни процесса клонирования

При кажущейся простоте операции при дублировании системы администратора ждет много проблем.

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

    Примечание

    HAL — hardware abstraction layer, представляет собой программный код, позволяющий операционной системе без изменений работать с различным аппаратным обеспечением. Условно HAL можно представить себе как драйвер материнской платы компьютера.

В обоих случаях такого расхождения загрузка клонированной системы может завершиться так называемым "голубым экраном смерти".

    Примечание

    Существует способ добавить в систему драйверы основных устройств так, чтобы система смогла стартовать на новом оборудовании. Этот способ описан в разд. "Снятие образа физического сервера" главы 8.

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

Другие уникальные характеристики настройки компьютера — это его имя, параметры сетевой настройки (IP-адрес) и т. п. В зависимости от установленного программного обеспечения на компьютере могут присутствовать и другие уникальные идентификаторы (например, идентификатор для систем мониторинга или централизованного управления. Заранее предвидеть все такие параметры практически невозможно. Поэтому администратору необходимо быть готовым к поиску решений возникающих проблем.

Еще одни сложности, которые могут возникнуть при клонировании системы, это наличие зашифрованных файлов (папок). Поскольку при шифровании данных применяется уникальный идентификатор безопасности, который заменяется программами дублирования диска (иными словами, на новой системе данные уже не прочесть), то для сохранности информации все зашифрованные файлы необходимо расшифровать перед клонированием.

Существует специальный способ подготовки жесткого диска к дублированию, рекомендованный вендором. Это использование утилиты sysprep.

Утилита sysprep

Рекомендуемый вариант подготовки жесткого диска к установке на другом компьютере состоит в использовании утилиты sysprep, поставляемой в составе дистрибутива системы. Версии утилиты отличаются для различных операционных систем. При возможности следует всегда использовать наиболее свежие версии. Например, начиная с версии 1.1, добавлена возможность обнаружения при завершении установки новых драйверов IDE-дисков. Проверить наличие новых версий необходимо на сайте изготовителя.

В Windows 2008 утилита находится в папке Windows, в других версиях ее нужно искать в Support\Tools\ установочного компакт-диска системы в архиве deploy.cab.

Программа sysprep практически "возвращает" программу установки на несколько шагов назад, при этом допустимо использовать все возможности автоматизации инсталляции: создать файл ответов, добавить новые, отсутствующие в дистрибутиве драйверы устройств, выполнить после завершения процесса определенные программы и т. д.

Особенностью использования программы является то, что установленные на исходном компьютере прикладные программы остаются работоспособными после операции клонирования. То есть вы можете полностью "укомплектовать" компьютер, установить все прикладные программы, а затем быстро создать новые компьютеры "по образцу".

Создание установочного образа системы при помощи утилиты sysprep

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

  1. Установите на типовой компьютер желаемую версию операционной системы, последние обновления безопасности, все прикладное программное обеспечение (офис, антивирусное ПО, обозреватели Интернета третьих фирм и т. п.).
  2. Создайте на диске (в корне) папку SYSPREP, запишите в нее утилиты Sysprep.exe и Setupcl.exe (эта папка после установки системы будет автоматически удалена).
  3. Чтобы исключить запросы дополнительной информации после переноса диска на новый компьютер (например, запроса серийного номера Windows), создайте в папке SYSPREP файл ответов. Проще всего воспользоваться программой диспетчера установки (Setupmgr.exe). После генерации файла ответов желательно просмотреть его и включить дополнительные параметры, если это необходимо.
  4. После сохранения файла ответов запустите программу sysprep. По завершению ее работы можно перенести жесткий диск в новую систему и включить компьютер. Обычно через несколько минут система завершит процесс установки и будет полностью работоспособна.
    Примечание Если предполагается наличие не PnP-устройств (это обычно относится к установке на устаревшее оборудование), то при запуске программы sysprep используйте ключ -pnp. Это позволит обнаружить такие устройства на новом компьютере, но может существенно (до 20 минут) увеличить процесс установки.

Подготовка диска для существенно отличающейся системы

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

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

  1. Чтобы команда sysprep "заставила" программу установки протестировать на новой системе все типы жестких дисков, следует включить в файл ответов такие строки:

    [Sysprep]
    BuildMassStorageSection = Yes
    [SysprepMassStorage]

  2. Чтобы добавить новые драйверы устройств, которые отсутствуют в дистрибутиве Windows, внутри2 папки SYSPREP создайте папку с названием, например, Drivers. Для удобства можно сделать структуру папки разветвленной, например создать папки Drivers\Video, Drivers\Net и т. п. Скопируйте в эти папки OEM-драйверы устройств компьютеров вашей сети.
      Примечание

      По умолчанию драйверы должны содержать цифровую подпись изготовителя. В противном случае их установка будет отложена до первого входа администратора в систему. Если необходимо разрешить установку драйверов без цифровой подписи, то следует включить в секцию [Unattended] файла ответов строку DriverSigningPolicy = Ignore (как при использовании программы sysprep, так и RIS).

  3. Дополните файл ответов Sysprep.inf в разделе [Unattended] ссылками на папку с драйверами по следующему образцу:

    OemPnPDriversPath = <путь_к_папке_драйверов>;<путь_к_папке_драйверов>

    Папки должны быть перечислены через точку с запятой. Например:

    OemPnPDriversPath = "sysprep\Drivers\net; sysprep\Drivers\Video"

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

После завершения этих операций запустите утилиту sysprep.

Дублирование жесткого диска

После завершения операций утилиты sysprep необходимо этот жесткий диск использовать как образец для создания новых. Существует много средств, позволяющих сделать копию жесткого диска.

Наиболее простой вариант создания копии данной системы заключается в дублировании структуры жесткого диска. Наиболее популярна программа GHost от компании Symantec, часто используют также утилиты от Acronis (http://www.acronis.ru/).

Структуру жесткого диска можно копировать непосредственно с диска на диск как на одном компьютере, так и на различных системах при подключении через COM-, LPT-, USB-порты или сеть. Можно сохранить образ диска в виде файла и использовать этот файл для последующего создания копий дисков. Особенно удобно использовать вариант сетевого разворачивания образа диска при одновременной подготовке нескольких систем. В этом случае запись диска будет вестись одновременно на все компьютеры.

Разворачивание по сети требует установки соответствующего сервера. Загрузка систем в этом случае будет происходить либо по сети (используя PXE-вариант загрузки), либо со специально подготовленного загрузочного диска (если сетевая карта не поддерживает режим PXE3). Функция подготовки такого диска включается в корпоративные версии соответствующих программ (рис. 6.17). Замечу, что корпоративные версии программ предлагают и иные специальные варианты выполнения операции. Например Symantec GHost Solution Suite позволяет автоматически создавать виртуальные разделы, после загрузки с которых программа дублирования получает полный доступ как к жесткому диску, так и к различным сетевым устройствам с файлами-образами дисков.

Рис. 6.17.
Мастер создания загрузочного диска.
Мастер помогает создать дискету, после загрузки с которой можно осуществить дублирование жесткого диска с подключением к другому компьютеру. В случае необходимости создается индивидуальный образ с использованием драйверов сетевого адаптера от изготовителя оборудования

Образы клонируемого диска и их модификация

Вместо дублирования подготовленного диска можно создать его образ и сохранить такой файл на сервере. Практически все программы клонирования дисков позволяют формировать новый диск из такого файла.

Данный способ во-первых, упрощает хранение образов. А во-вторых, позволяет добавлять в образы новые файлы, программы и т. д.

После подготовки диска программой sysprep при включении новой системы начинается просмотр специальных папок. В эти папки можно включить сценарии (и соответствующие файлы программ установки), которые будут выполнены автоматически при включении системы. Таким образом можно легко добавлять в образы новые программы и возможности.

Описание правил добавления автозапускаемых сценариев можно найти в справке утилиты sysprep. А для редактирования файла образа легко найти соответствующую утилиту.

Клонирование компьютеров-членов домена

Программа sysprep не позволяет клонировать системы, являющиеся членами домена. Необходимо сначала перевести компьютер в рабочую группу, после чего клонировать диски и добавить новые станции в домен.

Обратите внимание, что некоторые программы имеют специальные функции для клонирования дисков со станций, являющихся членами домена. Например, упоминавшаяся ранее программа Symantec GHost CE. При установке такой программы учетная запись, от имени которой она будет запускаться, наделяется правом добавления рабочих станций в домен. В результате появляется возможность клонирования диска и последующего автоматического добавления системы в домен за одну операцию. Пользователем данная операция воспринимается как клонирование станции-члена домена.

Подготовка программ для тихой установки

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

    Примечание

    Для тихой установки следует использовать корпоративные версии программ. Если программа требует, например, ввода индивидуального серийного номера, то такие действия крайне сложно автоматизировать.

Существуют разные способы подготовки программ к установке без запросов к пользователю.

Файлы ответов (трансформаций)

Программные пакеты могут включать возможности создания специальных файлов ответов, которые могут быть использованы при их установке. Например, это установка самой операционной системы (рис. 6.18), установка программ Microsoft Office и аналогичных.

Рис. 6.18.
Программа формирования файла ответов для автоматизированной установки

Для прикладных программ наиболее корректным вариантом является формирование файлов ответов (или трансформаций, transform, MST-файлы). Преимущество использования MST-файлов состоит в том, что исходный продукт не подвергается каким-либо изменениям в процессе подготовки к развертыванию. При этом файлов трансформаций может быть создано сколь угодно много — для любого варианта установки продукта.

Для подготовки файлов трансформаций необходимо использовать специальные программы. Так, в случае Microsoft Office они должны быть загружены с сайта изготовителя (обычно включаются в состав Resource Kit). При их использовании администратору достаточно выбрать в графическом режиме желаемые параметры установки, чтобы создать файл трансформации.

К сожалению, большинство программ, с которыми приходится сталкиваться на практике, не имеют описаний файлов трансформаций или мастера создания ответов.

Если не удается найти инструкции по составлению трансформаций у изготовителя продукта, то можно воспользоваться программами для редактирования установочных файлов (рис. 6.19) (не забывайте, что есть программы, преобразующие исполняемые файлы установки (setup.exe) к виду *.msi). Как правило, эти программы либо записывают ответы пользователя во время тестовой установки, либо позволяют отобразить структуру MSI-файла, назначить необходимые параметры, скрыть диалоговые окна и т. п.

Рис. 6.19.
Редактирование установочного файла с помощью специализированной программы

    Примечание

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

Использование ключей тихой установки

"Тихой" (silent) называют такую установку, которая не требует от пользователя ввода каких-либо данных в процессе инсталляции. Поэтому тихая установка может быть полностью выполнена в автоматическом режиме.

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

    Примечание

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

Стандартным для установочных файлов программ Windows является формат MSI. Формат инсталлятора подробно описан разработчиком и фактически является открытым стандартом. Для файлов в этом формате предусмотрен ключ тихой установки /q. При этом следует использовать следующий синтаксис запуска (в примере также использован ключ /n, наличие которого позволяет выполнить установку скрыто, без интерфейса пользователя):

msiexec /i <имя_файла_дистрибутива.msi> /qn

Если стандартный MSI-дистрибутив запускается файлом setup.exe, то следует использовать такую строку:

setup.exe /s /v"/qn"

Дистрибутивы, подготовленные с помощью популярного продукта InstallShield, имеют ключ тихой установки /s. Тихая установка требует наличия файла ответов. Если он отсутствует в составе дистрибутива, то пользователь может создать его самостоятельно, записав свои действия в качестве варианта ответов во время тестовой установки продукта. Для этого необходимо использовать режим записи ответов с ключом /r:

setup.exe /r /f1

    Примечание

    Ключ /f1 в командной строке можно не указывать. В этом случае файл ответов будет записан по умолчанию в папку Windows и будет иметь имя setup.iss. Аналогично, если вы не используете для файла ответов имя по умолчанию, то его необходимо указать с ключом /f1 при запуске тихой установки.

По умолчанию файл ответов должен иметь имя setup.iss и располагаться в той же папке, что и setup.exe. В противном случае при запуске тихой установки (с ключом /s) следует указать путь к нему в ключе /f1.

    Примечание

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

В последнее время приобрели популярность так называемые PackageForTheWeb-дистрибутивы (PFTW). Эти пакеты представляют собой один самораспаковываю-щийся файл, который после разархивирования автоматически запускает программу setup.exe, содержащуюся в этом архиве. Дистрибутивы PFTW допускают использование двух ключей. Ключ /s осуществляет "тихое" разворачивание дистрибутива, а ключ /a "передает" последующие ключи программе setup.exe. Например, вы можете использовать запуск PFTW с ключами /s /a /r для того, чтобы создать файл ответов.

    Примечание

    Большая база рекомендаций по развертыванию популярных продуктов (возможные ключи запуска и трансформаций, советы по переупаковке и т. д.), доступна на сайте AppDeploy (http://www.appdeploy.com/packages/index.asp).

Переупаковка

Если в программе не предусмотрен вариант тихой установки, то администратор имеет все же возможность настроить продукт для установки без запросов. Для этого используется технология переупаковки (repackages).

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

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

Не все дистрибутивы допускают переупаковку. Во-первых, нельзя переупаковывать сервис-паки (service pack), горячие заплатки и другие продукты, вносящие изменения в операционную систему (например, DirectX). Такие программы могут выполнять специальные процедуры, например, прямое редактирование двоичных файлов, которые не могут быть верно воспроизведены процедурой переупаковки.

Во-вторых, переупаковка продуктов, устанавливающих драйверы устройств, сетевые протоколы и другие системные агенты, часто не приводит к успеху. В-третьих, переупакованный дистрибутив не сможет заменить файлы, защищаемые технологией Windows File Protection. Такие изменения "разрешены" только для программ изготовителя операционной системы.

Переупаковка достаточно просто реализуется при помощи бесплатных утилит. В этом процессе от администратора требуется меньшее вмешательство: достаточно проконтролировать зафиксированный перечень изменений и отказаться от шагов, которые могли быть вызваны фоновой активностью системы (рис. 6.20).

Рис. 6.20.
Программа показывает изменения, которые вносит программа установки в настройки системы

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

Административная установка

В организациях часто используют административную установку. Административная установка подразумевает перенос дистрибутивных файлов продукта в какую-либо сетевую папку с одновременным внесением настроек, специфичных для данной организации. Так, многие программы имеют функцию установки отдельных компонентов "по требованию" (при первом обращении). Вы можете включить в административную установку указание на несколько сетевых путей, где будут храниться файлы дистрибутива. В результате при попытке добавления компонента инсталлятор проверит несколько сетевых папок и не сообщит об ошибке, если одна из них недоступна в текущий момент. Вы также можете включить в установку, например, указание параметров подключения почтового клиента к серверу Exchange. Таким образом пользователи, первый раз запускающие Outlook, автоматически увидят свой почтовый ящик без необходимости промежуточных шагов настройки подключения.

Административная установка выполняется с помощью ключа /а. При этом следует применять файлы трансформаций.


1Можно воспользоваться утилитами редактирования файла образа диска, добавить в него необходимые папки и изменить соответствующим образом файлы настроек.

2Можно разместить драйверы и в другом месте, соответственно подправив путь к ним в файле ответов. Например, в корневой папке жесткого диска. Причина размещения драйверов именно в папке SYSPREP — это автоматическое ее удаление после завершения установки системы.

3PXE (от англ. Preboot eXecution Environment) представляет собой среду для загрузки компьютеров с помощью сетевой карты без использования жестких дисков и других аналогичных устройств. PXE-код, находящийся в сетевой карте, загружает из сети исполняемый файл, которому и передает управление для дальнейшей работы системы.


Рейтинг@Mail.ru