研究ブログ

研究ブログ >> 記事詳細

2012/02/27

Time Machine用のドライブが壊れたので復旧させた

Tweet ThisSend to Facebook | by 池田
(2012/6/20 また以下のメッセージがでたので、いくつか情報を修正したり追加したりしました。)

Mac ProからNASを使ってTime Machineを使っているんだけど、突然以下のようなメッセージが。
「Time Machine でのバックアップの検証が完了しました。信頼性を向上させるには、Time Machine によって新しいバックアップが作成される必要があります。」
TimeCapsuleError

こいつは以前にもでたことがあって、その時には、最初「後でバックアップ」を
選んだんだけど、次のバックアップのタイミングで、結局同じメッセージがでたため、
他に選択肢もないやとたいして考えもせずに
「新規バックアップを開始」を押しました。
ただ、そのおかげで古いバックアップにアクセスできなくなるという目に
(後で分かったけど、名前が変更されたバックアップファイルがあったので、
実際は完全にアクセスできなくというわけでもなさそう)。
今回はちょっと調べてみよう、ということで検索してみました。

さて、まず前段階の話しから。
Time MachineはMacについてくる自動バックアップの仕組みで、
Time Capsuleというハードを変えば、ほとんど設定いらずで、
自動的にMac上のディスクを定期的にバックアップしてくれるというもの。
ただ、Time MachineはOSに付属してくるけど、Time Capsuleは有償。
一方、自分はNASを持っているのだけど、これをTime Machineで使えるよう方法もある。
それが、スパースバンドル(sparsebundle)で、実際の作業は以下のページを参照した。
http://hints.macworld.com/article.php?story=20090905212640957
これにより、(比較的)高いTime Capsuleを使わずに、
他社製のNASを使ってTime Machineによるバックアップがとれます。

さて、エラーメッセージがでて最初に試したのは以下のページ
http://d.hatena.ne.jp/mtaneda/20101207/1291670192
残念ながら、(今回も)私の場合はこれだけではうまくいきませんが、
ファイル名を変更するなどは参考にさせてもらいます。

さらに調べていくと、どうもディスクが壊れているような感じ。
そういえば、ちょっと前にスパースバンドルのディスクイメージがケーブルの
不良でマウントできてなかったんだけど、それでいきなりディスクが切れた
ようなことになったんだろうか。

じゃあ、次はディスクの復旧だ、というわけでディスク情報を調べて、
古典的にfsckします。もし、スパースバンドルが正常の時であれば
% mount
(略)
/dev/disk4s2 on /Volumes/Time Machine Backups (hfs, local, nodev, nosuid, journaled, mounted by USERNAME)
ってな感じで、ディスクファイルが判明する。

実際には、スパースバンドルが壊れているので、以下のようにしました。


% sudo hdiutil attach -nomount -noverify -noautofsck  /Volumes/disk1/snowy.sparsebundle/
/dev/disk4  GUID_partition_scheme           /dev/disk4              GUID_partition_scheme           
/dev/disk4s1  EFI                             /dev/disk4s1            EFI    
/dev/disk4s2  Apple_HFS   /Volumes/Time Machine Backups/dev/disk4s2            Apple_HFS                       /Volumes/Time Machine Backups


ログファイル(/var/log/system.log)を見ると、mdsというプロセスがエラーを出していたので、
このプロセスをとめた上で、関連してそうな一時ファイル(.Spotlightなど)を消して、fsckをかけました。
(2012/6/20 今回はプロセスを止めたりはしていません)
% fsck_hfs -drfy /dev/disk4s2                                                     
ラッキーなことに、これで復旧してくれました。
以前のバックアップにも問題なくアクセスできています。

参考にしたのは、こちらのサイト。
http://www.garth.org/archives/2011,08,27,169,fix-time-machine-sparsebundle-nas-based-backup-errors.html
また、今回使いませんでしたが、以下のサイトで紹介されている
サルベージのツールも便利そうです。

00:56 | 投票する | 投票数(0) | コメント(0)