Быстрая настройка профиля Mozilla Thunderbird

дата последнего изменения: 28.05.2010
метки: Thunderbird, VBScript


Постановка задачи

В некоторой организации в качестве почтового клиента используется Mozilla Thunderbird.

Все данные пользователя, в том числе и почта, располагаются на несистемном диске. Для определенности, профиль Mozilla Thunderbird обычно находится в каталоге D:\Mail.

Примерный план настройки профиля для нового пользователя штатными средствами:

  1. Запустить «менеджер профилей» (набрав команду thunderbird -p или изменив имеющийся ярлык) и указать размещение профиля — каталог D:\Mail.
  2. Запустить Thunderbird и не обращая внимания на вредительство мастера настройки, ввести вручную параметры пользователя и сервера.
  3. Создать внутри профиля текстовый файл для хранения подписи, указать его в настройках.
  4. Создать необходимые общие адресные книги.
  5. Найти и установить расширение для сворачивания окна в трей, перезапустить программу.

На все это уходит довольно много времени. Когда много настроек делается вручную, через интерфейс, велика вероятность допустить ошибку или что-то забыть. Самое неприятное, что в 3-й версии Thunderbird появился новый мастер настройки, навязывающий свои значения параметров и поэтому не удобный для корпоративной сети.

В итоге, возникла задача упрощения и, по возможности, автоматизации настройки профиля Thunderbird. Решение разделено на три независимых этапа.

Этап 1 — Шаблон профиля

На уровне файловой системы настройка Thunderbird состоит из двух действий:

  1. Создание в профиле пользователя Windows в каталоге %AppData%\Thunderbird файла profiles.ini. В этом файле указано расположение одного или нескольких профилей Thunderbird.
  2. Создание по указанному в profiles.ini адресу каталога профиля Thunderbird и размещение там структуры файлов для хранения почты, настроек, адресных книг и прочего.

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

  1. имя отправителя (отображаемое имя)
  2. адрес электронной почты (e-mail)
  3. имя пользователя на почтовом сервере (логин)

Эти параметры можно посмотреть и изменить в файле prefs.js внутри профиля, выглядят они примерно так:

user_pref("mail.identity.id1.fullName", "User Name");
user_pref("mail.identity.id1.useremail", "user@domain.local");
user_pref("mail.server.server1.name", "user@domain.local");
user_pref("mail.server.server1.realuserName", "userlogin");

Таким образом, можно один раз настроить профиль Thunderbird для условного пользователя и выложить на сервер в качестве шаблона. В дальнейшем для каждого конкретного пользователя достаточно скопировать шаблон и подправить файл prefs.js.

План настройки профиля для нового пользователя с использованием шаблона:

  1. Скопировать шаблон профиля с сервера в каталог D:\Mail
  2. Создать каталог %AppData%\Thunderbird и скопировать в него соответствующий файл profiles.ini
  3. Открыть файл prefs.js в Блокноте и прописать параметры учетной записи конкретного пользователя

Два первых действия можно выполнить командным файлом:

rem настройки
set SRC=\\SRV\Deploy\Thunderbird
set DST=D:\Mail
rem скопировать профиль
xcopy "%SRC%\Profile\*.*" "%DST%" /E /I /H /K /Z /Y
rem скопировать profiles.ini
xcopy "%SRC%\profiles.ini" "%APPDATA%\Thunderbird\" /Z /Y

Результаты первого этапа — неудобный «мастер настройки» не используется, число вводимых параметров сокращено до трех.

Этап 2 — Скрипт для ввода параметров учетной записи из Active Directory в файл prefs.js

Ввод параметров учетной записи пользователя домена легко автоматизировать — все нужные значения есть в Active Directory, получить их и вставить в текстовый файл prefs.js можно сценарием VBScript.

Такой сценарий prefs_init.vbs входит в состав «комплекта файлов для быстрой установки и настройки Mozilla Thunderbird», который применяется на этапе 3, подробное описание см. ниже.

Комплект файлов для быстрой установки и настройки Mozilla Thunderbird, версия 28.05.2010, в ZIP-архиве: thunderbird_profile_setup.zip

Что делает этот сценарий:

  1. В текущем каталоге ищет файл prefs.js. Если не найден, выводит предупреждение.
  2. Запрашивает в Active Directory информацию о текущем пользователе (через объект ADSI ADSystemInfo).
  3. Считывает файл prefs.js в строковую переменную, подставляет в нее найденные значения и записывает обратно в файл.

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

Const USERNAME = "User Name"  'имя отправителя (отображаемое имя)
Const USERADDR = "user@domain.local"  'адрес электронной почты (e-mail)
Const USERLOGIN = "userlogin"  'имя пользователя на почтовом сервере (логин)

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

rem исправить prefs.js
xcopy "%SRC%\prefs_init.vbs" "%DST%" /Z /Y
cd /D "%DST%"
cscript prefs_init.vbs //B
del "%DST%\prefs_init.vbs" /F /Q

Примечание: файл prefs.js имеет кодировку UTF-8. После редактирования файл следует сохранять именно в этой кодировке. Обычно используемый для работы с текстовыми файлами в сценариях объект FileSystemObject не поддерживает указанную кодировку, поэтому вместо него используется объект ADODB.Stream.

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

Этап 3 — Автоматическая установка и настройка Thunderbird

Mozilla Thunderbird можно установить в «тихом» режиме, без участия пользователя. Для этого предусмотрены ключи командной строки и файл ''setup.ini''. Пример использования:

\\SRV\Deploy\Thunderbird\Program\setup.exe /INI=\\SRV\Deploy\Thunderbird\setup.ini

Дистрибутив Mozilla Thunderbird, состоящий из одного файла, представляет собой самораспаковывающийся архив и не пригоден для автоматической установки. Его содержимое следует «распаковать» при помощи любого архиватора, например 7-Zip, и поместить в общую папку на сервере. В приведенном примере это каталог с адресом \\SRV\Deploy\Thunderbird\Program.

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

rem не настраивать повторно
if exist "%APPDATA%\Thunderbird\profiles.ini" goto Exit
rem не перезаписывать профиль
if exist %DST% goto Exit
rem установить программу
"%SRC%\Program\setup.exe" /INI="%SRC%\setup.ini"

Комплект файлов, необходимых для автоматической установки — см. ссылку выше.

Результат третьего этапа — установка и настройка почтовой программы производится запуском одного командного файла.

Другие варианты решения задачи


Есть замечания, предложения или пожелания? Сообщите автору!
↑ К началу страницы | соответствует стандартам XHTML, CSS

Фото автора

Павел Железнов
ИТ-специалист

Метки:

Страницы: