Как сделать тихую установку программы
Тихая установка программы: теория и практика
Некоторые пользователи наверняка сталкивались с понятием «тихая установка программы». Что означает этот термин и как это работает, я рассмотрю подробно в статье.
Что такое тихая установка?
Тихая установка — это автоматическая установка программы. Говоря иначе, при такой установке не нужно вводить ключи активации, использовать патчи и многократно нажимать «Далее». При автоматизированном процессе используются параметры инсталляции по умолчанию.
Такая функция полезна системным администраторам, так как позволяет сэкономить время при установке большого пакета утилит на несколько машин.
Но есть вторая сторона медали. Так как большинство установочных файлов по умолчанию включают в себя распаковывание второстепенного софта (бадлинг), то после тихой установки на компьютере может оказаться не нужное ПО.
Как тихая установка работает?
Запуск тихой установки осуществляется с помощью параметров (еще называют ключами). Запустить процедуру можно несколькими способами:
- из строки «Выполнить»;
- через самораспаковывающийся архив с файлом конфигурации;
- с помощью скриптов в .bat-файле.
Какой ключ использовать, будет зависеть от разновидности установщика. Чтобы было понятно — любая программа состоит из файлов и папок. Эти файлы и папки пакуются в один инсталляционный файл с помощью специальных программ упаковщиков. Таких программ несколько. Популярными являются:
Каждая из этих систем-упаковщиков имеет собственный ключ активации тихой установки. О ключах тихой установки может быть написано на официальных сайтах этих программ. Также выяснить, какой ключ активации тихой установки подходит для конкретного инсталлятора приложения поможет Universal Silent Switch Finder. Просто откройте им файл-установщик нужной вам программы.
Параметры (ключи)
Рассмотрим пример. Для программы FoxitReader использовался упаковщик Inno Setup (эту информацию я определил с помощью Universal Silent Switch Finder). Для тихой установки в этом упаковщике используются ключи:
- /SILENT — этот ключ не отображает фоновое Install-окно, но отображается установочный процесс;
- /VERYSILENT — этот ключ не отображает даже установочный процесс.
- /DIR =«путь установки» — идет после /SILENT или /VERYSILENT и указывает в какую папку распаковать файлы программы. Пример:
- /LANG=language — указывает язык установщика. Например:
- /NOICONS — запрещает создание папки с ярлыками в меню «Пуск». Пример:
- /SP- Подавляет такие окна как «вы хотите продолжить установку этой программы». Пример:
- /TASKS=«выбрать задачи» — назначение дополнительных компонентов/ярлыков при установке. Пример:
- desktopicon — создание ярлыка на рабочем столе;
- quicklaunchicon — создание ярлыка на панели быстрого запуска;
- startmenuicon — создание группы в меню «Пуск».
Пример
Для установки Foxit Reader с помощью тихой установки использую такие ключи:
В начале статьи я упомянул о возможности запуска тихой установки с помощью .bat-файла. К сожалению в BASH-скриптах я не силен, но в качестве примера предлагаю ссылку на статью habrahabr.ru. В статье написан скрипт для .bat-файла, позволяющий запустить тихую инициализацию с необходимыми параметрами.
С помощью самораспаковывающегося архива (sfx-архив) вы можете: запустить распакованные файлы, удалить их после инсталляции и т.д. Например sfx-архив может запустить .bat-файл с заранее прописанными командами тихой установки программы.
Всё, что для начала нужно знать о тихой установке программ
Е сли вы имеете обыкновение скачивать программное обеспечение с торрентов и других свободных источников, возможно, вам уже приходилось находить в папке с программой файлы командной строки «Тихая установка» . Что они из себя представляют и для чего нужны? Впрочем, догадаться об их назначении не трудно, о нём говорит само название. Если такой файл запустить, программа будет установлена в так называемом тихом режиме.
Когда пользователь устанавливает какую-нибудь программу, обычно мастер последовательно задаёт ряд вопросов: принимаете ли вы лицензионное соглашение, в какой каталог производить копирование программных файлов, устанавливать ли приложение только для администратора или для всех пользователей и прочее, и прочее. Тихий же режим инсталляции означает, что данная программа будет установлена автоматически, не задавая при этом «лишних» вопросов.
Так как тихий режим позволяет экономить время, используется он в основном системными администраторами, которым по долгу службы часто приходится устанавливать целые пакеты программ и утилит на несколько компьютеров. Обычным пользователям сталкиваться с тихим режимом чаще всего приходится при скачивании модифицированного софта со свободных источников, — к таким программам репакеры нередко добавляют соответствующие командные файлы.
Могут ли рядовые пользователи сами устанавливать программы в тихом режиме? Разумеется, чего-то особенно сложного в этом нет, хотя с определёнными тонкостями в процессе создания командных или конфигурационных файлов столкнуться всё же придётся. Процедура установки в тихом режиме может быть выполнена несколькими способами:
• Из командной строки.
• Из диалогового окошка «Выполнить».
• С помощью CMD или BAT-файла.
• Через самораспаковывающийся архив с включённым в него конфигурационным файлом.
Самым распространённым способом является использование командных файлов. Первые два способа — это всего лишь варианты третьего, а вот о четвёртом следует сказать пару слов отдельно. Применяется он обычно в тех случаях, когда режим тихой установки не предусмотрен разработчиком приложения. SFX -архивы позволяют производить автоматическую распаковку исполняемых файлов программ в нужное расположение, запускать их с нужными ключами, а также выполнять много других действий. Управляются SFX -архивы посредством конфигурационных файлов, содержащих специальные инструкции.
Поскольку создание самораспаковывающихся инсталляционных архивов имеет множество нюансов, рассматривать их в этой статье мы не будет, для начала разберём наиболее простой способ — создание CMD или BAT-файлов. Запуск тихой установки выполняется с помощью параметров командной строки или иначе ключей. Параметров этих довольно много, кроме того, для конкретных случаев необходимо использовать соответствующий параметр.
Выбор ключа зависит от того, в каком упаковщике был собран исполняемый файл приложения. Получить необходимую информацию о ключах тихой установки иногда можно на официальном сайте или форуме разработчика, также можно воспользоваться специальной утилитой Universal Silent Switch Finder. Запустите её, укажите путь к исполняемому файлу, и она выдаст всю основную информацию. Интерес представляют два параметра File Type (тип упаковщика) и Usage (используемые ключи) .
Рассмотрим всё на конкретном примере — тихой установке графического просмотрщика XnView. Утилита Universal Silent Switch Finder выдала нам тип упаковщика Inno Setup и четыре ключа: /VERYSILENT , /SUPPRESSMSGBOXES и, /NORESTART и SP- , хотя на самом деле для типа инсталлятора XnView их гораздо больше.
• /VERYSILENT — скрывает окошко мастера установщика и сам установочный процесс.
• /SUPPRESSMSGBOXES — подавляет сообщения установщика (ключ работает в паре с SILENT и /VERYSILENT) .
• /NORESTART — отключает требование перезагрузки компьютера после ускоренной установки
• /SP- — отключает сообщение «Эта программа установит на ваш компьютер…» .
Установщик Inno Setup также поддерживает ключи /help , /log , /nocancel , /restartexitcode , /closeapplications , /restartapplications , /lang , /dir , /noicons , /password и ещё как минимум пять параметров. Для других установщиков ключи могут быть иные, например, для NSIS и InstallShield ключом тихой установки является /S . Перечисление всех ключей заняло бы у нас слишком много времени, если вы хотите получить больше информации относительно поддерживаемых разными инсталляторами ключей, то всё это можно найти в интернете.
Итак, зная ключи, давайте напишем командный файл для программы XnView. Создайте в Блокноте новый текстовый файл и вставьте в него такую строку:
XnView-win-full.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART
Сохраните файл как SilentInstall.cmd (название роли не играет) и поместите в папку (!) с исполняемым файлом устанавливаемого приложения. Запустите его двойным кликом и через несколько секунд программа будет установлена.
При необходимости тихую установку можно выполнять в пакетном режиме, прописав в скрипт несколько команд, каждую с новой строки.
Как видите, ничего сложного, главное знать тип инсталлятора и поддерживаемые им параметры, а остальное, как говорится, приложится.
Не забывайте, однако, что при всём своём удобстве тихий режим имеет свою обратную сторону. Если в установщик программы будет включён сторонний софт, после инсталляции приложения на компьютере может оказаться совершенно ненужное пользователю программное обеспечение и это касается не только скачанных со сторонних ресурсов модифицированных программ, но также некоторых бесплатных приложений, в которые рекламные компоненты интегрируются самими разработчиками.
Тихая установка приложений (silent install)
Тихая установка – это такой процес, при котором вы тихо-мирно сидите и смотрите на экран, где без вашего участия происходит процесс установки ПО, при условии, что его вообще видно. При этом установщик не беспокоит вас вопросами типа Вы согласны с лицензионным соглашением? . Параметры для установки используются по-умолчанию. т.е. те, которые предлагает установщик при установке ПО обычным способом.
К минусам тихой установки можно отнести всякие панели в обозревателях и ярыки типа E-Bay на рабочем столе, поскольку чаще всего подобные бонусы включены в установку по-умолчанию. Но это скорее исключение, хотя и не редкое. Подробно о тихой установке читайте в этой статье.
На самом деле тихая установка – это очень удобная процедура, которая экономит время и упрощает жизнь системного администратора. Я, например, использую режим silent install после чистой установки ОС.
Режим тихой установки включается при помощи параметров или (как их ещё называют) ключей. Если вы не знаете, что это такое, можете восполнить пробел в знаниях при помощи этой статьи: BAT файлы. Запуск процедуры можно осуществить несколькими способами:
- Из командной строки, используя параметры.
- Аналогично через bat-файл (com-файл).
- Через SFX-архив с файлом конфигурации.
Ключей достаточно много. Какой именно ключ нужно использовать зависит от установщика. Т.е. любая программа, говоря простым языком, это папка с файлами, а запаковывает всё это добро в один файл установки специальный сборщик (система создания установщиков ПО). И вот от того, какой сборщик использовался, зависит – какой ключ будет вызывать режим тихой установки. Наиболее известные системы создания установщиков:
- Install Shield
- WISE Installer
- NSIS
- Inno Setup
Подробнее о ССИ и их ключах можно посмотреть тут. Также можно попробовать найти нужный ключ с помощью специального ПО – Universal Silent Switch Finder или почитать документацию на сайте разработчиков той программы, ключи к которой вы ищите.
Во время экспериментов с тихой установкой мне встречались следующие параметры запуска режима тихой установки:
Ключи для отмены перезагрузки:
Антивирус Avast имеет опцию тихой установки в корпоративной версии. В бесплатной (Home) версии по заявлениям разработчиков тихой установки нет. Однако, если вы в курсе как работает инсталятор InstallShield , вы поймете, что это утверждение не соответствует действительности, поскольку этот инсталятор сам по себе поддерживает ключ тихой установки /S . А значит все продукты, выполненные на его базе – тоже. И Avast Home не исключение.
Для запуска тихой установки архиватора 7Zip (сборщик NSIS) нужно запустить установщик с ключом /S . Положите установщик 7Zip (7z.exe) в корень диска С. Затем откройте меню Пуск › Выполнить (или + R ) и введите в форму следующую команду:
Архиватор установится без диалоговых окон и признаков внешней активности.
Однако случается что установщик собран нестандартно и ключей для запуска тихой установки у него просто нет. К таким исключениям относится Avira Antivir. По-тихому можно только распаковать содержимое установщика во временную директорию (минус одно окно), а дальше всё. В этом случае приходится создавать специальные самораспаковывающиеся архивы с файлами инструкций внутри. Тут дело обстоит немного сложнее.
Тихая установка с помощью sfx-архивов
Выше я упомянул о случаях, когда вариант с ключами может не работать. Режим тихой установки может быть просто не предусмотрен разработчиком. В этом случае достаточно часто можно выйти из положения, используя sfx-архивы. Sfx-архив – это само-распаковывающийся архив.
Одно из его достоинств в том, что для его распаковки не нужен архиватор. К тому же с помощью него можно существенно расширить возможности тихой установки, да и возможности установки ПО вообще.
Например, сразу после распаковки sfx-архив позволяет запустить один или несколько распакованных файлов, удалить файлы после выполнения операций и много чего ещё. В этих операциях принимают участие конфигурационные файлы, содержащие команды (например, BAT файлы).
При помощи команд можно имитировать процесс тихой установки. Многие установщики, в том числе и упомянутый в прошлой статье Avira, могут работать с файлами инструкций (подхватывать их), при условии, что инструкция находится в том же каталоге, что и установщик. Подробнее об инструкциях (командах, указывающихся в конфигах) можно узнать на сайте разработчика программы или на соответствующих форумах.
Чтобы в общих чертах представить конфигурационный файл (для тех, кто не в курсе) ниже приведён пример такого файла для программы Firefox Portable
Стоит отметить, что возможности и режимы работы программ со временем могут меняться. Firefox Portable может перестать поддерживать ini-файлы, а будущие версии инсталятора Avira – понимать и подхватывать файлы инструкций. Поэтому при экспериментах стоит ознакомиться с актуальной информацией о возможностях программ, которые вы планируете использовать.
Как sfx-архив может помочь процессу тихой установки, я думаю, мы разобрались. Теперь настало время перейти к практической части. Для создания sfx-архивов я пользуюсь доработанным модулем архиватора 7Zip. Весь процесс создания sfx-архива и запуска при помощи него режима тихой установки описан в статье Олега Щербакова (разработчика модуля). Я же очень кратко перескажу написанное в ней, пояснив пару моментов.
Сразу отмечу, что цель примера – запаковать установщик программы в sfx-архив таким образом, чтобы он после распаковки автоматически начинал устанавливаться по-тихому. В данной статье в качестве подопытного будет выступать установщик архиватора 7Zip (7z465.exe), хотя можно использовать любой другой, главное знать ключ тихой установки. У установщика 7Zip это ключ /S . Итак, для исполнения задуманного нам понадобится:
- Модуль sfх Олега Щербакова.
- Архиватор 7Zip . Им мы будем запаковывать установщик программы в архив формата “.7z”. Архиватор, понятное дело, надо установить в систему.
- Установщик программы (как я отметил выше, в примере я использую 7z465.exe).
- Архив .7z , который мы получим, запаковав установщик программы архиватором 7Zip.
- Конфигурационный файл config.txt, в котором будут содержаться иструкции “поведения” sfx-архива при распаковке, т.е. в данном примере в нём будет содержаться команда на запуск тихой установки.
Заклинание для создания sfx-архива (вводится в консоли).
Для удобства я положил все ингредиенты в один архив, который вы можете скачать по этой ссылке. Также, если скачать вот эту программу, можно поменять иконку архива (как это сделать читайте тут).
Обратите внимание, кодировка файла конфигурации config.txt должна быть UTF-8.
Итак, получаем после скачивания и распаковки папку со всем этим добром, далее по списку:
- Устанавливаем архиватор 7zip (лежит в папке).
- Запаковываем подопытного 7z465.exe (лежит в папке) в 7z-архив. Получаем на выходе файл 7z465.7z.
- Открываем консоль (Пуск › Выполнить – cmd) и переходим в папку с файлами: cd C:files (пример для папки “files” на диске “С”).
- Запускаем в консоли заклинание:
- COPY /b 7zsd.sfx + config.txt + 7z465.7z 7Zip.exe
- 7zsd.sfx – имя модуля sfx.
- config.txt – имя файла конфигурации.
- 7z465.7z – имя запакованного установщика 7z465.exe.
- 7Zip.exe – имя sfx-архива на выходе.
В результате получаем sfx-архив 7Zip.exe, который представляет собой исполняемый файл или самораспаковывающийся архив, внутри которого содержится инструкция config.txt. Содержание инструкции следующее:
- ;!@Install@!UTF-8!
;!@InstallEnd@! – строки начала и конца файла инструкции. Это комментарии, их можно удалить. А вот остальные две нужны обязательно. - GUIMode=”2″ – режим распаковки архива без оповещений (по-тихому).
- RunProgram=”7z465.exe /S” – строка инструкции, в которую необходимо вносить изменения в зависимости от того, какой установщик вы используете. В строке прописывается имя установщика, который запаковывается в 7z-архив и который требуется установить по-тихому + ключ тихой установки.
На этом всё. Ознакомившись со статьями Олега (ссылки выше), можно создать различные архивы, выполняющие абсолютно разные задачи. Удачных экспериментов!
Источники:
https://geekon.media/tixaya-ustanovka-programmy/
https://www.white-windows.ru/vsyo-chto-dlya-nachala-nuzhno-znat-o-tihoj-ustanovke-programm/
https://nevor.ru/stati/operacionnye-sistemy/stati-dlya-windows/tihaya-ustanovka-prilozhenij-silent-install/