Thunderbirdのプロファイルフォルダ

WindowsMeでの問題

Thunderbird を最初に起動したときにプロファイルが作成される。

その実体は prefs.js を中心とした設定ファイル群と受信したメールなどが入ったフォルダを一つのフォルダにまとめたもので、これを「プロファイルフォルダ」とよぶ。

プロファイルフォルダはWindowsではデフォルトでユーザープロファイルの中に作られる。ところが、WindowsMeの移動ユーザープロファイルでは、ログオンしたコンピュータにもプロファイルの内容が残る仕様で、しかもユーザーごとのアクセス権を設定できない。したがって同じコンピュータからログオンする他人に保存してあるメールの内容を読まれてしまうという問題がある。

ちなみにWindows2000やXPではフォルダやファイルにアクセス制御をかけられるのでこの問題はないと思われる。

LinuxなどのUNIX系のクライアントでももちろんユーザーごとのアクセス制御があるが、そもそもユーザープロファイルに相当するものはマウントされるユーザーホームディレクトリ内に置かれるので、ログオンしたコンピュータにユーザーのデータが残ることがないのが普通である。

プロファイルフォルダの場所の変更

ユーザーホームディレクトリに置くのがよい

そこで、Thunderbird のプロファイルフォルダは Windowsのユーザープロファイルの中ではなく、ファイルサーバーにより提供されるユーザーホームディレクトリ内に置くようにする。

プロファイルの位置は profiles.ini に書いてある

プロファイルは複数作ることが可能であるが、それらがどこにあるかは profiles.ini というファイルにすべて書かれている。

profiles.iniの内容はたとえば次のようなものである。

[General]
StartWithLastProfile=1   …(1)

[Profile0]               …(2)
Name=default             …(3)
IsRelative=1             …(4)
Path=Profiles/09nb97v8.default   …(5)

…(1) などは説明のために加えたものである。

上記の例では(1)最後に使ったプロファイルで次も起動することとし、まだ(2)の一番最初に作成されたプロファイルしかないが、(3)プロファイル名はdefaultである。そのプロファイルの保存場所は profiles.ini の位置からの(4)相対的な指定で、(5)のフォルダにある。ということである。( / )はもちろんフォルダ名の区切り文字で、09nb97v8 は複数のプロファイルを別々の名前のフォルダ名に格納するためにランダムな文字列を自動生成して作られたものである。

ちなみに、プロファイルが複数ある場合、Default=1 が次に使われるプロファイルの印として書き込まれている。

profiles.ini はどこにあるのか

この profiles.ini というファイルは、Windowsのユーザープロファイルが有効になっていればユーザーごとに別の場所になる。

WindowsMe では、hoge というユーザーであれば、C:\WINDOWS\profiles\hoge\Application Data\Thunderbird\ というフォルダにある。

どのように書き換えたのか

[General]
StartWithLastProfile=1

[Profile0]
Name=default
IsRelative=0
Path=U:\tb\profile

相対的な指定でないので、IsRelative を 0 にしなければならない。(ここは u:/tb/profile ではだめな模様)

U:\tb\profile はサーバーから見れば、/home/hoge/tb/profile となる。それぞれのホームディレクトリをネットワークドライブとして接続し U ドライブを割り当てているので、U:\tb\profile と書いてもユーザーそれぞれの場所を指定したことになる。

フォルダはあらかじめ作成する

ただし、このフォルダはあらかじめ作成されていないといけない。 なければ、プロファイル作成画面が出る。そしてすでにあるプロファイルは使用できず、新しい場所にプロファイルをつくることしかできなくなる。

しかし、ここに示されたフォルダがあれば、その中が空でもアカウントの設定を促されて、すべてうまくいく。

個別のアカウント設定は生徒に自分でやらせる。

すべてサーバー側で設定できる

本校の移動プロファイルでは、C:\WINDOWS\profiles\hoge\ はログオン時に /home/hoge/.profiles/ のデータで上書きされる。したがって、/home/hoge/.profiles/Application Data/Thunderbird/profiles.ini を書き換えておけばこれが反映される。(/Application Data/ は LINUX上では /Application\ Data/ と表現する必要があるかもしれない)

フォルダについても、、/home/hoge/tb/profile を作っておけばよい。

これはユーザーの登録の時にスクリプトですればよいし、また、後からの追加設定も可能である。

/home
   |
   +-hoge
       |
       +-.profiles  ユーザーhogeのWindowsプロファイル
       |
       +-tb
       |  +-profile  Thunderbirdのプロファイルとメール
       |
       +-user        hogeのユーザーホームディレクトリ(マイドキュメント)

実は、いまから考えれば、U:\tb\profile でなく、U:\tb でも何の問題もなかったと思う。試行錯誤のときに、Path=Profiles/09nb97v8.default に合わせて1層深くしたのだと思う。

プロファイルマネージャ

-p スイッチつきで Thunderbird を起動するとプロファイルマネージャを使うことがでる。これで一人のユーザーでもプロファイルを複数作れます。また、プロファイルを切り替えて使用するにもプロファイルマネージャからThunderbirdを起動します。

これを使って、プロファイルを作るときに、U:\tb\profile などを指定すればよいのです。

これは後で知りましたが、これを使ってたくさんの生徒のプロファイルフォルダの移動をおこなうのは現実的ではありません。

profiles.ini の位置

OS ユーザーhogeの profiles.ini の位置
Windows XP/2000 C:\Documents and Settings\hoge\Application Data\Thunderbird\
Windows 98/Me
(UserPrifile有効)
C:\WINDOWS\profiles\hoge\Application Data\Thunderbird\
Windows 98/Me
(UserPrifile無効)
C:\WINDOWS\Application Data\Thunderbird\
Linux /home/hoge/.thunderbird/

次の省略形ユーザー名を表に出さない指定法も使える(ログインしているユーザーに合わせて値が変化する変数)

WindowsXP/2000
C:\Documents and Settings\hoge\Application Data の代わりに %AppData%
Linux
/home/hoge/ の代わりに ~/

Mozilla Japan のプロファイルの管理に詳しい解説があります。

Thunderbird もファイルサーバー上にインストール

Thunderbird そのものもファイルサーバー上にインストールしている。Sambaの \\sv01\share (sv01はサーバー名)というサービスを S: ドライブとして接続しているので、個々ここに書き込み権限のあるユーザーでごく普通にインストールをするだけ。生徒は読み込み権限しかないが問題なく使える。

起動はデスクトップなどにショートカットを作ればよい。これもスクリプトでサーバー側から配布できる。

 ▲ 
聖愛高等学校
http://www.seiai.ed.jp/
初版:2006-12-07 訂正:2008-02-12