MacOSX 10.5 (Leopard)から搭載されたバックアップ機能TimeMachineは便利ですよね。一度設定してしまえばバックグラウンドでデータをバックアップ、しかもほとんど気づかない程度の負荷でいつのまにか完了してる感じ。バックアップドライブとつながっていれば1時間毎のスナップショットがとれるので、うっかり削除や上書きしてしまったファイルも簡単に取り戻すことができます。
さてTimeMachineのバックアップ先はUSB/FireWire等でつないだローカルディスクかLAN上にあるネットワークストレージですが、MacBook Air/Proの我が家では紐付きになるのは論外。ということでAir購入時既に家にあったLinkStation miniがTimeMachine対応してたのでそちらを利用していました。しかしAir/Proの2台体制になりLinkStationの容量を圧迫してきたので、引っ越しを決意。ちょうど我が家の無線LANアクセスポイントはAirMac Extreme。これにUSBで外付けHDDをつなげば、Time Capsule的に機能させることができます。MBPをSSD換装することで余った500GBの2.5inch HDDを適当なケースに入れて利用することに。
■TimeMachineのファイル構成
TimeMachineはHFS+フォーマットのストレージの上に、ハードリンクを使ったミラーコピーをとります。ハードリンクとは、エイリアス(Windowsでいうショートカット)の応用的な機能で、エイリアスでは本体とエイリアスが明確に区別されているのに対し、ハードリンクではどちらが本物という区別はなく、片方が削除されてももう片方が残っていればそれが本物という扱いになる、というもの。AというファイルのハードリンクA’を作成し、最初のAを削除した場合、エイリアスだとA’だけ残っていてももう元ファイルは読めないですが、ハードリンクならA’が本物となります(そもそも最初から両方本物なんですがまぁわかりやすく例えると、です)。
TimeMachineではまず最初に全てのファイルをコピーし、次のタイミングでは各ファイルを既にあるコピーと比較し変更があれば新たにコピー、変更がない場合はハードリンクを張る、ということをしているようです。そうすると、どのバックアップ時間のフォルダに入っても全てのファイルがそこにあるように見えるし、古い日付のフォルダを丸ごと削除しても、同じファイルを参照しているハードリンクが他の日付フォルダに存在する限り、実体が消えてしまうことはありません。上手いやり方ですね。まぁもともとはUNIX由来の技術ですし、Windows Home Serverなんかでは更に複数のPCでの重複ファイルをハードリンクで済ますことでバックアップ総量を抑えるなんてことまでしてたりしますが。TimeMachineの場合、グラフィカルでわかりやすいUIでそれをカバーして過去のファイルを簡単に取り出せるようにしたところが特長と言えるでしょう。
さて話が遠回りになりましたが、TimeMachineはこのバックアップを作るストレージを1つのディスクイメージとして作成します。TimeMachineの保存先に指定したディスクのルートフォルダに、1台のMacにつき1つのファイルが作られます。ファイル名は、「マシン名_MACアドレス.sparsebundle」みたいな感じ。基本的にはネットワークマウントできる(HFS+の?)ボリュームにこのファイルが置ければTimeMachine保存先として使えるみたいです。むしろこの形式のディスクイメージを最初に作るところが少しコツがいって、TimeMachine対応を謳うNASの場合、Web管理画面からこれを新規作成できるって意味合いが強いみたいです(手作業でディスクユーティリティで作って、適当なネットワークフォルダに置き、社外NASもTimeMachine対象に含めるというおなじないをターミナルで入力すれば、非対応NASでも使用可能みたい)。
今回は既にLinkStation miniによって作られたディスクイメージがあり、保存先はApple製品が作るネットワークフォルダなので特に難しいことはなく、単純にコピーだけで済みました。一応手順を書くと、
- 目的のUSB-HDDをMacに直接つなぐ
- ディスクユーティリティでHFS+パーティションを作る
- USB-HDDをAirMac Extremeにつなぎかえ、AirMacユーティリティから共有設定をする
- Macからネットワークフォルダとしてマウントできることを確認
- TimeMachineバックアップを止める
- LinkStation miniのバックアップ領域を手動でマウントし、*.sparsebundleファイルを新ディスクのルートフォルダに移動
- TimeMachine設定で新しいドライブを指定する
こんな感じであっさり移行できました。
ちなみにTimeMachineはパーティションの容量がある限り差分をとり続けるらしいので、通常のファイル共有にも使いたい場合はパーティションをわけて切っておくのがいいようです。ディスクユーティリティでイメージの上限サイズも決められるみたいですが、ファイル共有フォルダのルートに常にバックアップファイルが見えてるのは心臓に悪いですし。ただし、後述の「どこでもMy Mac」用とをにらんで、AirMacユーティリティでユーザアカウント設定をしたところ、ユーザ名によるネットワークフォルダは別途作成されました。バックアップがパンパンに膨れあがるまでは、(バックアップファイルを目にすることなく)そちらをファイル共有の場として使用することは出来ます。
■どこでもMy Macでの利用は苦戦中
どこでもMy MacによるWAN経由の使用は成功していません。一応、ポートをあけてIPアドレスで指定すればマウントはできるんですが、TimeMachineボリュームと同一のものとはみなしてくれない感じ。こちらは追々検証していきます。