読者です 読者をやめる 読者になる 読者になる

NAS上のTimeMachineのトラブルと復旧

mac

ナゾのトラブル発生

ここ1ヶ月以上、玄箱に対してTimeMachineでバックアップをとってたんだけど、どうも変なタイミングでスリープさせてしまったみたいで、昨日スリープから復帰してからTimeMachineがエラーになるようになってしまいました。


何度再実行しても、「このメディアはほかで使われているためほげほげ」みたいな(うろおぼえ)エラーになってしまって、いっこうに直りません。
しかも、TimeMachine用のボリュームもUnmountできない。
busy。TimeMachineのプロセスが後ろでつかんでるっぽい。


今考えれば、ターミナルで umount -f /Volumes/xxxx をすれば良かったんだけど、そのときはあまり何も考えずに、再起動をぽちっとしてしまいました。
これがいけなかった。


シャットダウンシーケンスでも当然アンマウントしようとするわけだけど、busy状態になので延々と待たされるだけ。
つまり、シャットダウンでフリーズ。
この辺でドキドキしはじめる。


しょうがないので電源長押しで起動し直す。
OSが正常に起動して一安心なんだけど、TimeMachineを実行するとやっぱりエラー。
仮想ボリュームのマウント自体ができなくて、その前で固まってるような動き。
で、エラーになって止まったくせに、なんかネットワーク帯域は使われてたり。訳分からない。


で、ナゾのNWアクセスを止めように求められないので、また再起動するも同様に途中でフリーズ。
涙目で電源長押し。


で、色々試した結果、どうやら今まで使ってた仮想ボリュームはもう壊れてしまってマウントができない、ということでFA。
今までのバックアップはあきらめて、新しくTimeMachineを作りなす事にしました。
とりあえず、母艦は正常に動いてるので、今までのバックアップが飛んでも痛くないし。
データの差分管理としての役割はあまり期待してないので、問題ありません。

再設定

というわけで、再設定を開始。
スパースバンドル・ディスクイメージを作り直して、NAS上に配置すればいいんですが、ディスクイメージを作り直すのがメンドイなぁ(←これが間違いの元)ということで、前にローカルで作ったときの空イメージを探したところ、ゴミ箱から発見しました。


これをとりだして、NAS上にコピーした後、TimeMachineを再実行したところ、、、、
「バックアップディスクイメージを作成できませんでした。」


しかも、NASをみると、さっきおいたファイルがなくなってます。
なんでーーー、とここから迷走が始まります。


〜数時間後〜


結論として、ファイル名の誤りでした><


「ホスト名_MACアドレス.sparsebundle」じゃないといけないのに、
なぜか「ホスト名_MACアドレス.tmp.sparsebundle」と、「.tmp」の文字が!!!!!


「ホスト名_MACアドレス.sparsebundle」とファイル名を変更して、実行すると、、、、、
無事にバックアップが開始されました!!!!!

やった!!!!!

なんでこんなファイル名が?

たぶん、NAS上に仮想ボリュームファイルがない場合にTimeMachineが初期作成しようとするときの、一時ファイル名が「ホスト名_MACアドレス.tmp.sparsebundle」となってたんじゃないのかなぁ。


ファイル名を手で書くのが面倒なので、一時的に作成されてるファイル名をコピーして仮想ボリュームファイルを作成したんだよねぇ、確か・・・。


だから、「tmp」付きのファイルをNASに置いておくと、初期化過程でエラーが発生し、そのまま後始末処理として一時ファイルが削除されて、消え去る、ということかと。


今回のtmp騒動は、MacOSXにしてみたら、

『「ホスト名_MACアドレス.sparsebundle」がないから初期化してやろうと思ったら、初期化用一時ファイルの「ホスト名_MACアドレス.tmp.sparsebundle」が既にあるってどういうこと!?やってらんねーよ!とりあえず、消すからな!』

という感じでしょうかね。


正直すまんかった。



とはいえ、そもそもスリープごときで変な動きすんじゃねーよ・・・。