Рассмотрим процесс развёртывания браузера Mozilla FireFox версии 15.0.1 с помощью System Center 2012 Configuration Manager.
Для начала распакуем загруженный дистрибутив с помощью 7zip во временный каталог, например C:\temp\Firefox Setup 15.0.1
Перейдём в подкаталог \core\defaults и создадим там каталог preferences. В созданном каталоге создадим файл prefs.js для настройки параметров FireFox со следующим содержимым:
//Mozilla Firefox config // //Запрещаем импорт настроек из других браузеров при первом запуске. pref("profile.allow_automigration", false); pref("profile.confirm_automigration", false); //Не устанавливаем FF браузером по умолчанию. pref("browser.shell.checkDefaultBrowser", false); //Не выводим сообщение о правах использования. pref("browser.rights.3.shown", true); //Отказываемся отправлять сведения о производительности. pref("toolkit.telemetry.rejected", true); pref("toolkit.telemetry.prompted", 2); //Отключаем отчёт о работоспособности FF pref("datareporting.healthreport.uploadEnabled", false); //Отключаем автоматические обновления. pref("app.update.channel", "default"); pref("app.update.auto", false); pref("app.update.enabled", false); pref("browser.search.update", false); pref("app.update.mode", 0); //Отключаем мастер-паролей pref("signon.rememberSignons", false); //Настраиваем Proxy. //0,3 -- без proxy //1 -- ручная настройка //2 -- указать путь до файла с параметрами автонастройки //4 -- автонастройка //5 -- системные параметры pref("network.proxy.type", 4); //Включаем Kerberos аутентификацию и указываем узлы по маске. pref("network.negotiate-auth.delegation-uris", "holding.com, holding2.com"); //Включаем NTLM аутентификацию и указываем узлы по маске. pref("network.automatic-ntlm-auth.trusted-uris", "holding.com, holding2.com") pref("network.negotiate-auth.trusted-uris", "holding.com, holding2.com"); //Отключаем сраницу приветствия при первом запуске. pref("startup.homepage_welcome_url", ""); pref("startup.homepage_override_url", ""); //Указываем домашнюю страницу 0-пустая pref("browser.startup.page", 1); pref("browser.startup.homepage", "www.mycompany.com");
Для того, чтоб при первом запуске браузера не запускался мастер импорта настроек с других браузеров, в каталоге core создадим текстовый файл override.ini с следующим содержимым:
[XRE]
EnableProfileMigrator=false
Во время установки FireFox устанавливается служба, которая следит за обновлениями браузера. Ключами в этом релизе отключить установку службы нет возможности, поэтому просто удалим файлы дистрибутива: maintenanceservice_installer.exe и maintenanceservice.exe. Не смотря на такую жестокость, браузер устанавливается без ошибок.
Заархивируем каталог Firefox Setup 15.0.1 с помощью 7zip с именем FireFox.7z
Для того, чтобы превратить обычный 7z-архив в самораспаковывающийся архив, выполним следующие действия:
Загрузим с сайта Олега Щербакова библиотеку 7zsd.sfx
Создадим файл Config.txt с следующим содержимым:
;!@Install@!UTF-8! RunProgram="setup.exe /S" Delete="%ALLUSERSPROFILE%\\Рабочий стол\\Mozilla Firefox.lnk" Delete="%Public%\\Desktop\\Mozilla Firefox.lnk" GUIMode="2" ;!@InstallEnd@!
Сохраняем текстовый документ в кодировке UTF-8 – это обязательный шаг, и если этого не сделать, - работать указанные параметры не будут (таковы требования библиотеки)
Собираем три наших файла в одно целое командой:
COPY /b 7zsd.sfx + Config.txt + FireFox.7z FireFox.exe
Для того, что с помощью SCCM не только устанавливать, но и удалять FireFox создадим Uninstall.bat с следующим содержимым:
IF EXIST "%WINDIR%\SysWOW64" ( "%ProgramFiles(x86)%\Mozilla Firefox\uninstall\helper.exe" /S ) ELSE ( "%ProgramFiles%\Mozilla Firefox\uninstall\helper.exe" /S )
Выкладываем 2 получившихся файла на сетевой ресурс и приступаем к созданию Приложения в SCCM.
В первом окне мастера создания приложения, укажем, что мы хотим вручную задать все сведения о приложении
Укажем основную информацию о приложении
Если есть перспектива развёртывания приложения используя Application Catalog, то стоит позаботиться о пользователях - описать приложение и добавить иконку
На шаге “Типы развёртывания” выберем тип “Установщик сценариев (основной)” и поставим переключатель на “Указать информацию о типе развёртывания вручную”. Полностью ручной метод описания выбирается по причине большего удобства, ведь созданный нами “инсталлятор” по факту представляет собой самораспаковывающийся архив.
Укажем где хранятся файлы нашего приложения.
Укажем 2 метода обнаружения нашего приложения, для x86 и x64
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Mozilla Firefox 15.0.1 (x86 ru)
HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\Mozilla Firefox 15.0.1 (x86 ru)
Не забываем установить ИЛИ в параметре соединения ключей реестра.
Для того чтобы не было запросов авторизации при установке приложения, режим установки выбираем “установить для системы”, а чтобы не ждать входа пользователя в систему, в требованиях к входу выберем “В любом случае”.
На шаге “Требования” разрешим установку нашего приложения только на клиентские ОС, а также укажем жёсткое соответствие пользователя и компьютера, для того, чтобы пользователи не могли запрашивать и устанавливать приложения на компьютерах, на которых они не являются основными пользователями.
На этом всё, осталось только в SCCM развернуть наше приложение на коллекцию компьютеров и/или пользователей.
UPDATE 10.06.2014:
В более новых версиях браузера способ настройки изменился.
1. Для запрета запуска мастера импорта при первом запуске, файл override.ini необходимо поместить в \core\browser.
2. Настройку браузера осуществлять через файл mozilla.cfg, который должен располагаться в каталоге core. В расположении core\defaults\pref\ создать файл local-settings.js с следующим содержимым:
pref("general.config.obscure_value", 0); pref("general.config.filename", "mozilla.cfg");
При использовании этого метода, конфигурация будет всегда считываться с файла при открытии браузера. У пользователя будет возможность изменять заданные конфигом настройки, но только на сессию. Настройки Proxy я перенёс в core\defaults\pref\channel-prefs.js. В этом случае, они считываются раз при первом запуске браузера и в дальнейшем пользователь может сохранить свои настройки, если это необходимо.
3. Для отключения отправки сообщений при падениях необходимо создать ключ реестра SubmitCrashReport типа DWORD (32-bit) с значением 0 в расположении: HKLM\SOFTWARE\Mozilla\Firefox\Crash Reporter
Для автоматизации процесса создадим install.bat, который будем использовать для установок:
FireFox_29.0.1.exe IF NOT EXIST "%WINDIR%\SysWOW64" ( REG ADD "HKLM\SOFTWARE\Mozilla\Firefox\Crash Reporter" /v SubmitCrashReport /t REG_DWORD /d 0x0 /f ) ELSE ( REG ADD "HKLM\SOFTWARE\Wow6432Node\Mozilla\Firefox\Crash Reporter" /v SubmitCrashReport /t REG_DWORD /d 0x0 /f )
Применимо к Mozilla FireFox 29.0.1
Дополнительные источники информации:
1. Первые шаги к созданию SFX архива
2. Список настроек About:config на русском языке с пояснениями
Обратная ссылка: Развёртывание Mozilla Firefox ESR помощью System Center 2012 R2 Configuration Manager | Блог IT-KB /