2014/11/12

Time Machineのバックアップが始まらない(Spotlightの罠)

Time Machineによるバックアップがしばらく作成されないという症状に出くわしました.そほれほどファイルがない Mac Book Air (10.8)は特段問題ないのですが,数十万ファイルの追加・更新がたまに発生するMac Pro (10.9)は数週間完全にバックアップされていない期間が続いていました.改めて手動でバックアップを指示しても,週末(48時間以上)経ってもバックアップが始まらない.

これはやばいということで,バックアップする外部ディスクを新しいものに変えました.とりあえず,ファイル数は多いものの初期のバックアップは成功.しばらく1時間毎のバックアップも作成されていましたが,ちょっとした解析で数十万ファイルを更新したらバックアップが始まらない症状が再発

諦めて新DISKを一度まっさらに(フォーマット)して,再度Time Machineを開始するも,,,30時間経っても「バックアップを準備中…」のまま...

再起動直後の1回目はちゃんとバックアップされることもあったけど,ダメな時もあるので根本の解決にはならず(というか,都度再起動は無理だし).

Appleサポートに参考になりそうな回答があった.

Spotlightをoffにする!?
確かに,この症状を発症すると,Spotlightで検索しても答えが返ってこなくなる.Time Machineにしても,Spotlight にしてもファイル探索なのでI/Oに負荷がかかっててしかたがないのかなぁ...と漠然と思ってたのですが,Spotlight を off にして解決した方もいる模様.

ちなみに,この時点では,コンソール.app で backupd で絞り込みをかけても何も出てこない(Airの方はそれなりに出てるけど,エラーはなさそう).

Spotlightの対象DISKから外す方法→「システム環境設定」→「Spotlight」→「プライバシー」(タブ)から,ファイル数が多いディレクトリを検索対象から除外した.

とすると,まずはSpotlightをなんとかした方が良いのか.
というわけで,Mac Spotlightの検索インデックスのデータベースを再作成する方法を参照すると,メニューバーでインデックス作成中の様子が見えるじゃないですか...Mac OS使うようになって何年経ってるんだ....と思うような基本的な無知.見ると,「索引作成にかかる時間を計算中」で明らかに固まってる.まずはこいつをなんとかせんにゃあかんね.

というわけで,先ほど Spotlight からの除外ディレクトリを指定したけど,上記ブログにあるように,一旦 DISK 全体を対象外にして,まっさらから作りなおしてもらう(ファイルが多いところは除外して)ことにする.実際,ほとんどが png 画像だったり機械的に生成したhtmlなので問題ない.
というか,Time Machineバックアップにしか使ってない外付け DISK まで Spotlight の対象になってたのか!外部 DISK 2つ(新旧 Time Machine)を対象外にして,local DISK も対象外にしたところで,メニューバーを見ると索引作成も動いていない.

そして,除外リストから local disk を外そうとしたら今度は「不明なエラーのため項目の追加または削除ができません」と...そろそろ終わりにしたいんだけど...再起動.環境設定の Spotlight から local disk を除外してちょっとお喋り(?)してる間に「索引作成にかかる時間を計算中」モードに突入.

さて,これでどうなるか...
(現状)
Time Machine → OFF (無用な負荷を減らすため)
  * ただし,1ヶ月程度前のバックアップは古い DISK に出来ている状態(USB接続はしてるけど,Time Machineとしては使っていない).
Spotlight → まっさらにして,索引作成

(追記)
NAVERまとめは色々可能性がまとめられててよさそう(未確認)

(20時間後)
Spotlight の索引作成が,「索引作成にかかる時間を計算中」のまま20時間が経過.Time Machine の方が重要なので,Spotlight の対象から local disk を外して(対象をなしにする)索引作成を止めて,Time Machine のトライに戻る.まずは,ファイルを除外しないでテスト.
Time Machine → ほぼ全てを対象に設定
Spotlight → 停止

結局,Time Machineも簡単には戻ってくれなかった.ので,
・バックアップ先をフォーマット(1ヶ月前のは別のDISKにあるので)
・ほとんどのディレクトリをバックアップ「対象外」に設定
・それでも始まらないので再起動

これで,なんとかTime Machineバックアップが「終了」するようになった.ので,対象外にしたものを1つ1つ戻して,全体(~/tmp/ は前から除外していた)をバックアップ対象にした.これで,Time Machineは復旧.

わかったこと:
・Spotlightとの関係が怪しい
・バックアップディスクを新調して,対象外を増やしたところからコツコツやればなんとかなる
(有益な解決策に見えないが...)

Spotlight はOFFのままなので,いずれやり直したい.少なくとも,/.Spotlight-V100が101GBあるという異常な状態であることは確認した.