クラウド同期の恐怖と Time Machine からの復元

昨日,予告しておきながらちょっと脱線気味な話です.

今,アドレス帳は Mobile Me を使って,自宅 MacBook Pro,研究室 iMac,研究室 MacBook Air,私の iPhone + iPad2,息子&妻の iPad で同期しています.ある日,iPad2 でアドレス帳を管理するアプリをいじっていたところ,知らないうちに研究室の iMac 上のアドレス帳が二重化してしまっていました(iPad2 上では特に変には見えてませんでした).iMac の同期時に一度警告が出たのでおかしいなと思っていたのですが,どうせ片方消せばよいだけだろうと警告を無視して,その後,重複を削除していました.MacBook Air の方も,警告を無視して同期してしまいました(こちらが無事であればもっと簡単に復元できていたはず……).

iMac の重複取り除き作業が終了したところで,iPad のアドレス帳を覗いてみると,何かの拍子でデータベースが壊れたのか,名前・メールアドレス・電話番号がまったく一致していないことに気づきました.その後 iMacMacBook Air のアドレス帳を調べると,完全にすべてが同期してしまっており,アドレス帳として用をなさない状態になっていました.

運良く iPhone はモバイル通信を切っていたため,このデータは生きていたものの,無線 LAN 接続をした瞬間にこの iPhone のアドレス帳も汚染されることは明白でありました(Mac の同期と違って同期の方向を選べないため).

しばらくどうやってデータを復元したものだろうと考えていたのですが,ふと Mac のアドレスブックが Time Machine 対応であったことを思い出しました.ということで,さっそく iMac で作業です.壊れてしまったアドレスをすべて捨て,タイムマシンで数時間前に戻り,すべての連絡先を復元しました.その後,Mobile Me コントロールパネルで,同期をリセットし,Mobile Me 上のデータを iMac のデータで上書きしました.しばらくすると,MacBook AiriPad2 ともにアドレス帳がすべて元に戻りました.

帰宅後,妻から「昼間にメールを出そうとしたら自分のアドレスに,別の人の名前が表示されていたのでメールを出さずに止めておいた」と申告がありました.危ないところでした.クラウド同期の怖さを思い切り思い知らされたと同時に,Time Machine のすばらしさが身にしみた事件でした.

P.S.
今回の問題がかなり早く解決できたのは,以前 IMAP がらみで同じようなトラブルにあっていたからでした.この時も,ちょっと悩んで以下のような解決方法をとったのでした.

  1. サーバのバックアップはちょっと古く,そこからの復元ではかなりのメールをロスしそうでした.
  2. そのため,IMAP サーバについては,バックアップからの復元はあきらめ,空のまま新規で立ち上げました.
  3. クライアントを接続すると IMAP サーバと同期されて,ローカルに入っている全メールのコピーがロストされました.
  4. すかさず数時間前の Time Machine からすべてのフォルダのメールを復元しました.
  5. IMAP の同期機能により,復元されたメールがすべて IMAP サーバに復元されました.
  6. 復元したメールに対して,ルールを適用することでほぼトラブル前と同じ環境が復元できました.

この作業の時に初めて,Mail.app では Time Machine が特別に作用し,個々のメールに対して動作することを知ったのでした.この時にいろいろなアプリを調べてみて,アドレスブックでも同様に Time Machine に対応するということを確認できていたのがよかったです.