2008-12-20

なんちゃって TimeCapsule を作ってみた。

前からやろう、やろうと思いっていた「なんちゃって」Time Capsule を作ってみた。

参考にしたのは主に次の二つのサイト。

どちらもリモートのボリューム上のスパースバンドル・ディスクイメージをバックアップ先に使うのは同じで、それを TimeMachine が使えるようにする手順が違うだけ。

また、後者では afp が必須で smb だと駄目なように書いてあるけど、うちでは samba を使って今のところ問題なく動いているようだ。もしかしたら、samba の設定によって変わってくるのかもしれない。

というわけで、簡単にまとめてみる。

1. バックアップのディスクを用意する

バックアップを置くボリュームは、おうちサーバの openSUSE 10.3 上の samba。新しく買ってきたディスクをつないで、ファイルシステムを作って適当なところにマウントしておく(ちなみに今回は reiserfs を利用)。さらに該当ディレクトリを samba の設定で、Mac OS X からマウントできるようにしておく。

2. 実際のバックアップ先となるイメージを作る

上のリンク先にあるような手順で(どちらでも同じ)、スパースバンドル・ディスクイメージを作成する。ファイル名は、「コンピュータ名_MACアドレス.sparsebundle」のようにしておくこと。このとき、MACアドレスの Octet 区切の 「:」や「-」は入れない。例えば、コンピュータ名が「macbook.local」で MAC アドレスが 「00:23:32:ab:cd:ef」の場合は、「macbook.local_002332abcdef.sparsebundle」となる。リンク先にあるようにサイズの変更を忘れないように。

3. Mac 側でリモートボリュームへの TimeMachine を有効にする

自分は iTimeMachine を使う方法で行なったが、Terminal で「defaults write com.apple.systempreferences TMShowUnsupportedNetworkVolumes 1」する方法でもたぶん大丈夫だと思う(実際 iTimeMachine での設定後に TMShowUnsupportedNetworkVolumes が "1" に設定されているのを確認したが、その他になにをやっているのかは未確認)。それが済んだら、システム環境設定の TimeMachine パネルの「ディスクを変更」で、バックアップ先を設定しておく。

以上でおしまい。本物の TimeCapsule でもそうらしいけど最初のバックアップにはそれなりの時間がかかるので、寝る前に仕込んでおくのがいいと思う。また、次からは該当ボリュームをマウントしておかなくても必要に応じて勝手にマウントしてくれるので(使ったことがないけど)本物の TimeCapsule と使い勝手は変わらない(と思う)。

参考のために、TimeMachine 時のログを抜粋しておく(MACアドレス該当部分は「XXXXXXXXXXXX」で置き換えてある)。
オフトピだけど、下の blockquote 要素中の pre 要素に style="overflow: auto" してあるのに、Safari だとスクロールバーが出ないな……
Dec 19 01:13:07 mbp15 /System/Library/CoreServices/backupd[11787]: Starting standard backup
Dec 19 01:13:07 mbp15 /System/Library/CoreServices/backupd[11787]: Network volume mounted at: /Volumes/timecapsule
Dec 19 01:13:09 mbp15 /System/Library/CoreServices/backupd[11787]: Disk image /Volumes/timecapsule/mbp15.local_XXXXXXXXXXXX.sparsebundle mounted at: /Volumes/TimeCapsuleBackup
Dec 19 01:13:09 mbp15 /System/Library/CoreServices/backupd[11787]: Backing up to: /Volumes/TimeCapsuleBackup/Backups.backupdb
Dec 19 01:13:18 mbp15 /System/Library/CoreServices/backupd[11787]: No pre-backup thinning needed: 2.01 GB requested (including padding), 116.41 GB available
Dec 19 01:13:18 mbp15 /System/Library/CoreServices/backupd[11787]: Waiting for index to be ready (906 > 0)
Dec 19 01:14:33 mbp15 /System/Library/CoreServices/backupd[11787]: Copied 2639 files (81.1 MB) from volume mbp15.
Dec 19 01:14:34 mbp15 /System/Library/CoreServices/backupd[11787]: No pre-backup thinning needed: 1.91 GB requested (including padding), 116.41 GB available
Dec 19 01:14:52 mbp15 /System/Library/CoreServices/backupd[11787]: Copied 1654 files (160 bytes) from volume mbp15.
Dec 19 01:15:00 mbp15 /System/Library/CoreServices/backupd[11787]: Starting post-backup thinning
Dec 19 01:16:40 mbp15 /System/Library/CoreServices/backupd[11787]: Deleted backup /Volumes/TimeCapsuleBackup/Backups.backupdb/mbp15/2008-12-18-005955: 116.41 GB now available
Dec 19 01:16:40 mbp15 /System/Library/CoreServices/backupd[11787]: Post-back up thinning complete: 1 expired backups removed
Dec 19 01:16:40 mbp15 /System/Library/CoreServices/backupd[11787]: Backup completed successfully.
Dec 19 01:16:43 mbp15 /System/Library/CoreServices/backupd[11787]: Ejected Time Machine disk image.
Dec 19 01:16:59 mbp15 /System/Library/CoreServices/backupd[11787]: Ejected Time Machine network volume.
TimeMachine(backupd)が勝手にリモートボリュームとそのボリューム上にあるイメージファイルをマウントしているのが分かる。

これで数日使ってみたが特に問題なく使えている。

それはともかく、これはなかなか便利。もっと早く設定しとけばよかった。

No comments: