thunderbird

Thunderbirdのprefs.jsが壊れていきなりアカウントが消えちゃったので直した話

More than 1 year has passed since last update.

ちょっとトラブったけど直せた、かつググってもあまりヒットしなかったのでメモ。

今朝、出社していつものようにスタートアップで立ち上がったThunderbirdでメールを見ようとしたら、なぜかアカウントの新規作成画面が表示されていた。

突然のことに戸惑いつつThunderbirdのプロファイルディレクトリー(通常 C:\Users\<ユーザー名>\AppData\Roaming\Thunderbird\Porifles\ 以下にある)を見てみたが、ぱっと見おかしなところは見つからなかった。
容量からして、メールの中身もなくなってはいないらしい。

ひとまずProfilesディレクトリー全体のバックアップをとってから、
仕方なくインフラ担当に再設定方法を確認して再度ログインするも、保存していたメールはすべて見えなくなっていた...。
本体は残っているのにおかしいなぁ、と思いながら更にプロファイルディレクトリーをあさると、
Invalidprefs.jsなるファイル(C:\Users\<ユーザー名>\AppData\Roaming\Thunderbird\Profiles\<適当な文字列>.default\Invalidprefs.js)を発見。名前からしてなんだか怪しい。

Thunderbirdを終了した状態でエディター(BOMなしUTF-8のファイルが開けるエディターを使おう!)で開いてみると、文字化けしている文字がありつつも、内容からしてどうやら設定ファイルらしいことが読み取れた。
名前の通りやはりJavaScriptらしき文法で書かれていた(ただし、コメント行が#で始まる、ちょっと変わったものだったが)ので、文字化けした文字とともに文法を直して保存してみた。

同じディレクトリーにprefs.jsというファイルがあり、それには初期設定らしき内容がやはりInvalidprefs.jsと同じ文法で書かれていたので、文字化けを直した上でpref.jsにリネームして上書きした。
その上でエディタを終了し、Thunderbirdを起動させるとあっさり復活した。
古いメールもちゃんと読み取れる。
どうやらこのprefs.jsが何かの拍子で(恐らくThunderbirdのバグで)壊れてしまったらしく、それが原因でアカウントがないことになっていたらしい。
エディターだけで直せてよかった。テキストファイルは偉大ですね!