前回の続き。
Time Machine for every Unix out there – IMHO。rsyncでTime Machineがやっていることを真似してみようという話。参考にはなるんだが、このままではいくつか問題が。
実はMac OS Xのrsyncは拡張されていて、いや、正確にはMac OS Xだけでは無いのかもしれないけれど、rsyncに-Eというオプションがある。要はExtended Attributeもsyncするというオプションなのだけれど、Mac OS Xの場合、リソースフォークというExtended Attributeが存在するのは周知の通り。
#上記の「Mac OS Xだけでは無いのかも」というのは、-Eの実装がSELinuxのラベルとかにも対応しているかも、ということです。
なので、HFS+を相手にrsyncしないとこのリソースフォークのsyncが出来ず、バックアップしたファイルを復元した時に色々問題がある。
つまりだ。
rsyncを用いて複数のMacを同期するには、ネットワーク越しにHFS+を利用出来ないとならないわけだ。確実なのは、iSCSIでブロックデバイスを出してHFS+フォーマットにしちゃう方法。その他には、Mac OS Xをサーバにして、HFS+のパーティションをWebDAVとかで見せるのも、Mac OS Xがクライアントならどうにか実装しているかも知れないけれど、試してないし調べてもない。
ちょっと試したところ、rsync -aP -E --link-destで確かに上手くいくんだが、Mac OS Xが作成する.(ドット)でファイル名が始まる特殊ファイル群がかなり迷惑。rsyncの--excludeのgrabbingがどうもうまくいかず、ちょっと悩み中。