Как я могу написать сценарий установки профилей Thunderbird и настройки параметров учетной записи для каждого пользователя на нескольких сетевых машинах под управлением OS X?

1 ответ1

1

ОБНОВЛЕНО:

Настройки учетной записи Thunderbird являются частью профиля. Поэтому, чтобы создать новый профиль для каждого пользователя, вам нужно скопировать в папку профиля и файл profiles.ini который Thunderbird проверяет, какой профиль загрузить. Наконец, вам нужно отредактировать несколько файлов в папке Profile, чтобы они указывали на правильные пути на новом компьютере.

Например, предположим, что ваш главный (локальный) пользователь называется LOCALUSER и использует профиль с именем knw54wii.default . В файле /Users/LOCALUSER/Library/Thunderbird/Profiles/knw54wii.default/prefs.js будут строки, указывающие пути к каталогам, например:

(9A=/Users/LOCALUSER/.thunderbird/knw54wii.default/Mail/Local Folders)

Вам нужно будет изменить все экземпляры /Users/LOCALUSER/ на /Users/REMOTEUSER/ где REMOTEUSER - это имя пользователя для каждого удаленного компьютера. Вы можете автоматизировать все это, используя BASH, ssh/scp и sed:

#!/bin/sh 
while read name ip ;
do
    scp -r "~/Library/Thunderbird/Profiles/knw54wii.default/" $name@$ip:"/Users/$user/Library/Thunderbird/Profiles/"; 
    scp -r "~/Library/Application Support/Thunderbird/profile.ini" $name@$ip:"/Users/$user/Library/Application Support/Thunderbird/"; 
    ssh  $name@$ip sed -i s/LOCALUSER/"$name"/g /Users/$user/Library/Thunderbird/Profiles/knw54wii.default
done < $1

Обязательно замените LOCALUSER на любое имя пользователя, которое вы используете на своем локальном главном компьютере. Также измените knw54wii.default на соответствующее имя профиля. Затем сохраните этот скрипт как copy_thunderbird.sh и запустите его для списка пользователей и их IP-адресов:

bash copy_thunderbird.sh IPlist.txt

Где IPlist.txt содержит одного локального пользователя и его ip на строку, например:

bob 192.168.1.10
dick 192.168.1.11
harry 192.168.1.12

В приведенной выше строке сценария запускаются две команды scp : одна копирует папку профиля, а вторая - profile.ini. Третья команда запускает sed чтобы изменить все экземпляры LOCALUSER на то, что в данный момент находится в переменной $name , то есть имя удаленного пользователя.

Чтобы избежать повторного ввода пароля ssh, вы можете попробовать установить ssh без пароля.

В настоящее время у меня нет доступа к машине с OSX, поэтому я экстраполирую все это из настроек Linux. Убедитесь, что проверили это сначала. Даже если он не работает идеально, он должен хотя бы помочь вам в этом.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .