昨日,予告しておきながらちょっと脱線気味な話です.
今,アドレス帳は Mobile Me を使って,自宅 MacBook Pro,研究室 iMac,研究室 MacBook Air,私の iPhone + iPad2,息子&妻の iPad で同期しています.ある日,iPad2 でアドレス帳を管理するアプリをいじっていたところ,知らないうちに研究室の iMac 上のアドレス帳が二重化してしまっていました(iPad2 上では特に変には見えてませんでした).iMac の同期時に一度警告が出たのでおかしいなと思っていたのですが,どうせ片方消せばよいだけだろうと警告を無視して,その後,重複を削除していました.MacBook Air の方も,警告を無視して同期してしまいました(こちらが無事であればもっと簡単に復元できていたはず……).
iMac の重複取り除き作業が終了したところで,iPad のアドレス帳を覗いてみると,何かの拍子でデータベースが壊れたのか,名前・メールアドレス・電話番号がまったく一致していないことに気づきました.その後 iMac や MacBook Air のアドレス帳を調べると,完全にすべてが同期してしまっており,アドレス帳として用をなさない状態になっていました.
運良く iPhone はモバイル通信を切っていたため,このデータは生きていたものの,無線 LAN 接続をした瞬間にこの iPhone のアドレス帳も汚染されることは明白でありました(Mac の同期と違って同期の方向を選べないため).
しばらくどうやってデータを復元したものだろうと考えていたのですが,ふと Mac のアドレスブックが Time Machine 対応であったことを思い出しました.ということで,さっそく iMac で作業です.壊れてしまったアドレスをすべて捨て,タイムマシンで数時間前に戻り,すべての連絡先を復元しました.その後,Mobile Me コントロールパネルで,同期をリセットし,Mobile Me 上のデータを iMac のデータで上書きしました.しばらくすると,MacBook Air,iPad2 ともにアドレス帳がすべて元に戻りました.
帰宅後,妻から「昼間にメールを出そうとしたら自分のアドレスに,別の人の名前が表示されていたのでメールを出さずに止めておいた」と申告がありました.危ないところでした.クラウド同期の怖さを思い切り思い知らされたと同時に,Time Machine のすばらしさが身にしみた事件でした.
P.S.
今回の問題がかなり早く解決できたのは,以前 IMAP がらみで同じようなトラブルにあっていたからでした.この時も,ちょっと悩んで以下のような解決方法をとったのでした.
- サーバのバックアップはちょっと古く,そこからの復元ではかなりのメールをロスしそうでした.
- そのため,IMAP サーバについては,バックアップからの復元はあきらめ,空のまま新規で立ち上げました.
- クライアントを接続すると IMAP サーバと同期されて,ローカルに入っている全メールのコピーがロストされました.
- すかさず数時間前の Time Machine からすべてのフォルダのメールを復元しました.
- IMAP の同期機能により,復元されたメールがすべて IMAP サーバに復元されました.
- 復元したメールに対して,ルールを適用することでほぼトラブル前と同じ環境が復元できました.
この作業の時に初めて,Mail.app では Time Machine が特別に作用し,個々のメールに対して動作することを知ったのでした.この時にいろいろなアプリを調べてみて,アドレスブックでも同様に Time Machine に対応するということを確認できていたのがよかったです.