Thunderbirdのアドレス帳を複数デバイスで同期→うまく読み込めないときの対処法

こんにちは、個人事業OguLinks代表の小倉(@jun_ogulinks)です。
自宅・職場など複数のPCでThunderbirdのアドレス帳を同期して使っています。
異なるPCで同じアドレス帳が使えたら便利ですもんね。
新しいPCにThunderbirdを入れたときデフォルトではない(自分で作った)アドレス帳のインポートがすんなりいかなかったので対処方法を紹介します。
この記事では以下のことが分かるようになっています。
- 自分で作ったアドレス帳のインポートがうまく行かないときの対処方法
- 複数デバイスでのアドレス帳同期方法(CardDAVを使わない方法)
- アドレス帳の同期用アドオン(Addressbooks Synchronizer)の使い方
アドレス帳保存用フォルダの用意

では、まず初めにアドレス帳を保存しておくためのフォルダを用意します。
イメージとしては上図のような感じです。
複数デバイスでアドレス帳を同期させて使うためには、ネットワークに接続されたフォルダでなければいけません。
例えば
などのクラウドストレージサービスですね。
デスクトップアプリが使えるものであれば何でも大丈夫だと思います。

私はMicrosoftのOneDriveを使っています。
本当はGoogle Driveを使いたかったのですが、職場がMicrosoftしか対応していないので仕方なくです。

職場での利用の場合は利用許可されているクラウドストレージサービスを使ってください。
以降、OneDriveで解説していきます。
OneDriveをインストールしたらアドレス帳を保存するための専用フォルダ(同期用フォルダ)を作成します。
私は ” Thunderbird_addressbook “という名前でフォルダを作成しました。
フォルダ名は自由に決めてOKです。

上の写真だとフォルダパスは ” OneDrive – Personal “となっています。
しかし、実際には下の写真のようにフルパスは ” SkyDrive ” という名前になっているようです(アドレスバーの何もないところをクリックするとフルパスが表示されます)。

後で出てくる同期フォルダの指定のところでは、こちらのフルパスを指定しなければいけませんので、間違えないように注意してくださいね。
さて、これで同期用フォルダの準備ができました。
アドレス帳ファイルの場所とコピー → フォルダを同期

作成した同期フォルダに既存のアドレス帳ファイルを保存して、フォルダ内のファイルを同期します。
上図のようなイメージです。
これから具体的な手順を説明していきますが、ここの作業が人によって複雑になるかもしれませんので注意してください。
まず、アドレス帳ファイルがどこにあるのかと言いますと、以下のフォルダの中に入っています。
C:\Users\ユーザー名\AppData\Roaming\Thunderbird\Profiles\ランダムな英数字.default
すでに分かりづらいですが、上から4つ目の階層にあるAppDataフォルダは隠しフォルダとなりますので、標準では表示されません。
表示させるためには以下のようにエクスプローラーの表示タブから隠しファイルの項目にチェックを入れます。


隠しファイルのチェックは普段入っていると作業の邪魔になるので、この記事の作業が終わったら解除してしまいましょう。
アドレス帳ファイルのあるフォルダ(ランダムな英数字.default)にたどり着いたら、目的のファイルを探します。
まずは下の2つのファイルを見つけてください。
- abook.sqlite (→デフォルトの個人用アドレス帳)
- history.sqlite (→デフォルトの記録用アドレス帳)
自分で作ったアドレス帳が例えば2つある場合は以下のファイルも存在しているかと思います。
- abook-1.sqlite
- abook-2.sqlite
自分で新規に作成したアドレス帳の数だけ ” abook-番号.sqlite ” というナンバリングされたファイルが生成されているはずなので、それらを見つけてください。
ここが要チェックですが、例えば自分で新しく ” test01 ” という名前のアドレス帳を作ったとしましょう。
次に ” test02 ” という名前のアドレス帳を作ります。
そうすると ” test01 ” のアドレス帳ファイルは ” abook-1.sqlite “、” test02 ” のアドレス帳ファイルは ” abook-2.sqlite ” という形で保存されます。
- test01 を新規作成 → abook-1.sqlite に保存される
- test02 を新規作成 → abook-2.sqlite に保存される
アドレス帳を作った順番に ” abook-番号.sqlite ” という名前で保存されるようです。
このとき、必ずアドレス帳の名前をメモしておいてください(あとで使います)。
アドレス帳の名前が分からなくなってしまった場合、アドレス帳ファイル(abook-番号.sqlite)があっても読み込めませんので注意してください。
ここまでで、自分の必要なアドレス帳ファイルがどれなのかわかったかと思います。
そしたら自分が必要な全てのアドレス帳ファイルをコピーして、最初に作成した同期用フォルダにペーストしましょう。

念のためバックアップは取っておきましょう!
そして、次の作業が最も重要です。
この作業をしないとエラーとなります。
同期用フォルダにペーストしたら、
アドレス帳ファイルのファイル名を変更(リネーム)します。
では、どのように変更するかというと、
- abook.sqlite → _tb_abook.sqlite
- history.sqlite → _tb_history.sqlite
- abook-1.sqlite → test01
のように変更します。
” abook-番号.sqlite ” は自分で作製したアドレス帳なので同じ名前を付ければよく、迷うことはないと思います。
ですが、デフォルトのアドレス帳もリネームしなければならないという・・・。
実際、リネームせずにデフォルトのアドレス帳を読み込もうとすると _tb_abook.sqlite がありませんよ!と怒られます。
このリネームの作業がこの記事の中で肝となる部分ですので忘れないようにしてください。

デフォルトのアドレス帳もリネームしないといけないなんて、普通は思いつきませんよね・・・。
リネーム作業まで終了したら、全てのデバイスでフォルダを同期させてください。
同期の方法は使っているクラウドストレージサービスのデスクトップアプリごとに違います。
同期先デバイスでアドレス帳を作成

ここのセクションは同期先デバイス(上図のBのPC)での作業となります。
同期するデバイス(PC)で全て同じ名前のアドレス帳が存在している必要があります。
デフォルトのアドレス帳(個人用・記録用)は最初からあるので作る必要はありません。
自前で作成したアドレス帳は同期先のデバイスにはありませんので、同じ名前のアドレス帳を用意しておきます。
下の写真の手順に沿ってアドレス帳を新規作成してください(写真のキャプションに説明が書いてあります)。



ここまでできたら同期処理の準備が完了です。
次は実際に同期処理を行っていきます。
アドレス帳の同期方法

アドレス帳同期処理の作業は同期先デバイスだけでなく大元のデバイスも含め、全てのデバイスで設定が必要です。
作業イメージとしたは上図のようになっています。
つまり、上図の例で言えばアドレス帳同期処理はAとBの両方のPCで実施する必要があります。
このとき、アドレス帳の同期には ” Addressbooks Synchronizer ” というアドオンを使います。
まだ、導入していなければインストールしましょう。
Addressbooks Synchronizer をインストールするとウィンドウ右上に下図のようなボタンが表示されるようになります。
クリックして設定を開いてください。

今回、testという名前のアドレス帳を同期したいのでチェックを入れます。

一つ前のセクションでアドレス帳を作る作業をしましたが、その作業をしていないとここの「同期するアドレス帳」一覧に同期したいアドレス帳がリストされませんので注意してください。
「ローカルファイルと同期」にはアドレス帳ファイルが保存されている同期用フォルダを指定しますす(ここではC:\Users\ユーザー名\SkyDrive\Thunderbird_addressbook)。

あとは「今すぐダウンロード」をクリックするとアドレス帳が読み込まれますので確認してみてください。
このとき
間違っても「今すぐアップロード」は押さない
ようにしてください。
もしも、上図のBのPCで最初に「今すぐアップロード」を押してしまうと、作り上げたアドレス帳が全て白紙に戻ってしまうと思われます・・・。
本当に気を付けましょう・・・(アドレス帳データが消えてしまっても責任は取れません)。

もし間違って「今すぐアップロード」を押してアドレス帳が消えてしまったら責任取ってくれますか?

自己責任です。
「今すぐダウンロード」をクリックすることで、無事に複数デバイスでのアドレス帳同期ができるようになりました。
なお、定期的にアドレス帳ファイルを更新したい場合は「今すぐダウンロード」ボタンの上にあるオプションにチェックを入れておきます。
どのくらいの間隔でアドレス帳ファイルをダウンロードするか決めることができますので、自分の好きな時間(秒)を指定してください。
どのくらいの時間にして良いかわからないけど設定はしておきたいという方は私と同じ値にしておけばOKです。
私はこのように設定しています。
- タイマーによるダウンロード タイマー間隔時間: 720秒
- Automatic upload after changes タイマー(秒): 10秒
ちなみに設定タブはデフォルトのままで大丈夫です。

まとめ
Thunderbirdのアドレス帳をクラウドストレージサービスのフォルダを利用して複数デバイスで同期する方法について解説しました。
Addressbooks Synchronizerの癖というかThunderbirdの癖というか、少々分かり辛かったです。
CardDAVを使った方法もありますが、職場のネットワーク環境の制限を受けて利用できない場合もあるかもしれません。
私と同じように、複数デバイス(例えば職場と自宅など)でThunderbirdを使っていて、同じような問題を抱えている人は是非試してみてください。
Pythonのプログラム・GUIアプリケーションを作って仕事の効率化をお手伝いします!
科研費等での支払いにも対応しており、国立・私立大学の先生から複数の受注実績があります。
対応可能かどうかも含めてお気軽に問い合わせページからご相談ください。
OguLInks公式サイトのトップページに簡単な事例紹介もありますのでご参照ください。

Twitterでお得情報をゲットしたい方はフォローいただけると幸いです。
(投稿一覧はこちらからどうぞ)