Mozilla Thunderbird – Profil utilisateur

Remarques :

  • Cet article traite du profil utilisateur Firefox sous Windows
  • Sous Linux, le profil utilisateur est situé dans /home/username/.thunderbird/

 

Résumé : fichiers et dossiers à conserver en cas de restauration partielle du profil

abook.mab
calendar-data/ (si l'extension Lightning est utilisée)
cert8.db
cert_override.txt 
extensions/
history.mab
key3.db
logins.json
Mail/
prefs.js
secmod.db
session.json

 

La structure du profil utilisateur

 
Sous Windows, le profil utilisateur est stocké dans le dossier suivant :

C:\Users\username\AppData\Roaming\Thunderbird\

ou, plus globalement, pour l’utilisateur connecté :

%APPDATA%\Thunderbird\

Dans ce dossier, on trouve les éléments suivants :

├── Profiles/
│   └── iaov2l28.default/
└── profiles.ini

Le dossier Profiles contient le profil utilisateur à proprement parlé, ici iaov2l28.default, mais le nom varie car il est généré aléatoirement à sa création à partir de 8 caractères alphanumériques.
Le fichier profiles.ini spécifie le chemin relatif du profil utilisateur à charger, ici Profiles/iaov2l28.default

[General]
StartWithLastProfile=1

[Profile0]
Name=default
IsRelative=1
Path=Profiles/iaov2l28.default
Default=1

Rmq :
Le cache local du navigateur est situé dans le dossier suivant (à adapter en fonction du nom généré pour le profil) :

C:\Users\username\AppData\Local\Thunderbird\Profiles\iaov2l28.default

 
Le profil utilisateur est donc situé dans le dossier C:\Users\username\AppData\Roaming\Thunderbird\Profiles\iaov2l28.default\ et contient, entre autres, les éléments principaux suivants :

├── Profiles
│   └── iaov2l28.default
│       ├── abook.mab                                           1→ carnet d'adresses personnelles
│       ├── calendar-data/                                      2→ données Lightning
│       ├── cert8.db                                            3→ certificats
│       ├── cert_override.txt                                   4→ exceptions de sécurité
│       ├── extensions/                                         5→ fichiers des extensions installées
│       ├── history.mab                                         6→ carnet d'adresses collectées
│       ├── ImapMail/                                           7→ copies locales mails IMAP
│       ├── key3.db                                             8→ clé de cryptage
│       ├── logins.json                                         9→ logins et mots de passe stockés et cryptés
│       ├── Mail/                                               10→ mails locaux et POP3
│       ├── prefs.js                                            11→ préférences de l'utilisateur
│       ├── secmod.db                                           12→ base de données des modules de sécurité
│       ├── session.json                                        13→ session précédente
│       └── xulstore.json                                       14→ taille + position barre d'outils et fenêtres
└── profiles.ini

 
1 abook.mab
Carnet d’adresses Adresses personnelles

 
2 calendar-data/
Données liées à l’extension Lightning (calendrier local par défaut). Contient la base de données local.sqlite (la table cal_events contient les évènements).
Dans les versions antérieurs de Thunderbird, les données étaient stockées dans la base de données storage.sdb

 
3 cert8.db
Contient les certificats faisant autorité ou importés par l’utilisateur.

 
4 cert_override.txt
Contient les exceptions de sécurité ajoutées par l’utilisateur en passant outre le message d’avertissement.

 
5 extensions/
Dossier contenant les fichiers/dossiers relatifs aux extensions installées : arborescences de fichiers/dossiers ou fichiers .xpi (archive compressée)

 
6 history.mab
Carnet d’adresses Adresses collectées

 
7 ImapMail/
Copie locale des emails consultés et des en-têtes des emails non consultés pour les comptes IMAP (ou copie de l’ensemble des emails si la synchronisation est active). Son contenu peut être supprimé.

 
8 key3.db
Base de données contenant la clé de cryptage permettant de crypter/décrypter les logins et mots de passe stockés dans le fichier logins.json

 
9 logins.json
Contient la liste des logins et mots de passe mémorisés par site et cryptés avec la clé stockée dans le fichier key3.db

{

    "nextId": 3,
    "logins": [
        {
            "id": 1,
            "hostname": "imap://imap.opensharing.fr",
            "httpRealm": "imap://imap.opensharing.fr",
            "formSubmitURL": null,
            "usernameField": "",
            "passwordField": "",
            "encryptedUsername": "XXXXXXXXXXXXXXXXX",
            "encryptedPassword": "XXXXXXXXXXXXXXXXX",
            "guid": "{bbb76188-be22-4889-98dc-5d436097914c}",
            "encType": 1,
            "timeCreated": 1485032433158,
            "timeLastUsed": 1485032433158,
            "timePasswordChanged": 1485032433158,
            "timesUsed": 1
        },
        {
            "id": 2,
            "hostname": "smtp://smtp.opensharing.fr",
            "httpRealm": "smtp://smtp.opensharing.fr",
            "formSubmitURL": null,
            "usernameField": "",
            "passwordField": "",
            "encryptedUsername": "XXXXXXXXXXXXXXXXX",
            "encryptedPassword": "XXXXXXXXXXXXXXXXX",
            "guid": "{18c6a159-6275-4b4b-8e56-7fb23650ee40}",
            "encType": 1,
            "timeCreated": 1485032433165,
            "timeLastUsed": 1485032433165,
            "timePasswordChanged": 1485032433165,
            "timesUsed": 1
        }
    ],
    "disabledHosts": [ ],
    "version": 1

}

 
10 Mail/
Contient les mails locaux ou Dossiers locaux (si le chemin spécifié n’a pas été modifié) et les mails des comptes POP3.

 
11 prefs.js
Il stocke les paramètres de préférences de l’utilisateur, tels que les changements que vous faites dans les boîtes de dialogue des Options de Thunderbird ou dans l’éditeur de configuration about:config
L’accès à l’Editeur de configuration se fait en via Outils > Options > Avancé (onglet) > Général (sous-onglet) > Editeur de configuration…

Rmq : Les préférences définies dans prefs.js peuvent être écrasées par des préférences de même nom dans un fichier (à créer) user.js (sous réserves que des préférences globales identiques mais de type lockPref ou pref n’existent pas).

 
12 secmod.db
Ce fichier est la base de données des modules de sécurité cryptographiques (PKCS #11 et standards PSM) permettant l’établissement d’une connexion SSL/TLS, la vérification des signatures, la gestion des certificats, etc.

 
13 session.json
Ce fichier stocke les onglets et messages ouverts avant la fermeture de Thunderbird.

 
14 xulstore.json
Il stocke les paramètres de taille et de position des barres d’outils et fenêtres.

[...]
"chrome://messenger/content/preferences/preferences.xul": {

    "MailPreferences": {
        "lastSelected": "paneAdvanced",
        "screenX": "402",
        "screenY": "187"
    }

},
[...]

 

Pour aller plus loin

 

Fichiers pouvant engendrer des problèmes divers et variés

  • extensions.ini
  • directoryTree.json
  • folderTree.json
  • panacea.dat
  • parent.lock
  • xulstore.json

 

Les préférences globales

Nous avons vu que les préférences utilisateur étaient stockées dans le fichier prefs.js du profil et qu’elles étaient de la forme :

user_pref(preference, valeur);

Il est toutefois possible de spécifier une valeur prédéfinie pour une liste de paramètres au niveau global de Thunderbird, c’est-à-dire pour l’ensemble des profils utilisateur. Ainsi, chaque profil généré se verra affecter les préférences listées avec les valeurs définies.
Pour cela, il faut tout d’abord créer le fichier all.js suivant :

C:\Program Files (x86)\Mozilla Thunderbird\defaults\pref\all.js

Contenant les 2 lignes suivantes :

pref("general.config.obscure_value", 0);
pref('general.config.filename', 'thunderbird.cfg');

Ensuite, il faut créer un fichier thunderbird.cfg (ou du nom spécifié dans le fichier précédent) à la racine de l’application :

C:\Program Files (x86)\Mozilla Thunderbird\thunderbird.cfg

Contenant les préférences prédéfinies (avec 2 lignes vides en tête de fichier), par exemple :



lockPref("mail.smtpserver.smtp1.authMethod", 3);
lockPref("mail.smtpserver.smtp1.hostname", "smtp.opensharing.fr");
lockPref("mail.smtpserver.smtp1.port", 587);
lockPref("mail.smtpserver.smtp1.try_ssl", 2);
lockPref("mail.smtpserver.smtp1.username", "machin.bidule");
lockPref("mail.smtpservers", "smtp1");

La fonction lockPref spécifie une option dont la valeur est verrouillée et donc que l’utilisateur ne pourra pas modifier.
Il existe principalement 3 fonctions globales (en plus de la fonction user_pref propre au fichier prefs.js) :

  • lockPref : pour bloquer les préférences. Elles ne pourront pas être changées par la GUI ou via about:config. Dans la majeure partie des cas, la GUI va enlever l’option ou la griser.
  • defaultPref : pour modifier la valeur par défaut. Si un utilisateur change cette valeur, il pourra la garder entre plusieurs sessions. Les préférences peuvent être réinitialisées via la GUI ou autre méthode. Elle sera montrée avec un statut “par défaut” dans about:config
  • pref : Un utilisateur peut changer une valeur, mais elle sera effacée au prochain redémarrage

 

Requêter un annuaire LDAP pour l’autoconfiguration

Au début du fichier C:\Program Files (x86)\Mozilla Thunderbird\thunderbird.cfg (voir préférences globales ci-dessus), saisir les informations suivantes :


var user = getenv("username");
var env_mozdebug= getenv("MOZILLA_DEBUG");

function processLDAPValues(values) {
  if(values) {
    // set the global var with the values returned from the LDAP query
    ldap_values = values;
    var uid = getLDAPValue(values, "uid");
    var cn = getLDAPValue(values, "cn");
    var mail = getLDAPValue(values, "mail");

[...]
lockPref("mail.identity.id1.archive_folder", "imap://" + user + "@imap.opensharing.fdi/Archives");
lockPref("mail.identity.id1.draft_folder", "imap://" + user + "@imap.opensharing.fdi/Drafts");
lockPref("mail.identity.id1.fcc_folder", "imap://" + user + "@imap.opensharing.fdi/Sent");
lockPref("mail.identity.id1.fullName", cn);
lockPref("mail.identity.id1.stationery_folder", "imap://" + user + "@imap.opensharing.fdi/Templates");
lockPref("mail.identity.id1.useremail", mail);
lockPref("mail.root.imap", "C:\\Users\\" + user + "\\AppData\\Roaming\\Thunderbird\\Profiles\\iaov2l28.default\\ImapMail");
lockPref("mail.root.none", "C:\\Users\\" + user + "\\AppData\\Roaming\\Thunderbird\\Profiles\\iaov2l28.default\\Mail");
lockPref("mail.server.server1.directory", "C:\\Users\\" + user + "\\AppData\\Roaming\\Thunderbird\\Profiles\\iaov2l28.default\\ImapMail\\imap.opensharing.fdi");
lockPref("mail.server.server1.name", mail);
lockPref("mail.server.server1.spamActionTargetAccount", "imap://" + user + "@imap.opensharing.fdi");
lockPref("mail.server.server1.spamActionTargetFolder", "imap://" + user + "@imap.opensharing.fdi/Junk");
lockPref("mail.server.server1.userName", user);
lockPref("mail.server.server2.directory", "C:\\Users\\" + user + "\\AppData\\Roaming\\Thunderbird\\Profiles\\iaov2l28.default\\Mail\\Local Folders");
lockPref("mail.smtpserver.smtp1.username", user);
[...]

if (env_mozdebug) {displayError("NO ERROR, just a debug, cn =" + cn + " and mail = " + mail);}
	}
}

getLDAPAttributes("ldap.opensharing.fdi","ou=people,dc=opensharing,dc=fr","uid=" + user,"uid,cn,mail");

 

Préférences utiles

user_pref("mail.server.server1.check_time", 1);

Définit l’intervalle de temps de vérification des nouveaux messages (Vérifier les nouveaux messages toutes les X minutes)
Par défaut, cette valeur est à 10 (minutes)

user_pref("calendar.timezone.local", "Europe/Paris");

Définit le fuseau horaire du calendrier
Par défaut, cette valeur est vide

 

Installation silencieuse

> executable -ms

ex :

> "Thunderbird Setup 45.0.exe" -ms

 

Extensions utiles

Lightning
Trier manuellement les dossiers
MRC Compose
SOGo Integrator et Connector + Lightning

 

Références

Fermer le menu
%d blogueurs aiment cette page :