8.0-RELEASEを待たねばなるまい・・・と思っていた ZFS version 13 ですが、予想より早く7-STABLEにも降りてきたようです。あまり詳しいことは知りませんが、Solaris ZFS 管理ガイドを見ると zfs send に -I とか -R オプションが書かれています。これがあると ZFS ツリーを丸ごとバックアップするときにちまちまスナップショット毎に差分送受信する必要が無く、コマンド一行で済んでしまいそうなので超々便利そうです。
ただ、一度upgradeするとdowngradeの方法が無いのは稼動中の自宅サーバにとって辛いです(^_^)。さらに /usr/src/UPDATING によると
ZFS send / recv between pool version 6 and pool version 13 is not supported.
らしいので、自宅サーバとバックアップ用(zfs receiveに使ってる)を同時期に upgrade する必要があります。どっちかを先行upgradeしてみて様子をみたいところですけど、一緒に大冒険しないといけないのがなんとも。
ところで、近い将来の仮想化に向けてファイルシステムの引越し方法を検討しています。普通に zfs send すれば良いのですが、ZFS version 6 ではちまちま転送しなくちゃいけないわけで、しかもサーバを動かしながらなので転送元が更新されたらまた差分転送しなくちゃいけないので ちょっと面倒です。なんか良い方法は無いかな~と考えているとひとつ名案が思い浮かびました。
実際にやってみたのですが、一度 detach したデバイスってzpool として見つけてくれないようで(T^T)。転送先で zpool import -d デバイス でうまくいくと思ったのですが、だめでした。再度 iSCSI を使って転送元で別名のファイルシステムとしてインポートしようとしてもだめでした。detachが成功した時点で使えなくなるのかな? ということはやっぱり zfs send するのが正解? てことは先に zpool upgrade しちゃうのが簡単??
いろいろ悩ましいです。