私はメインプール「タンク」に単一のデータセット「データ」を含む非常にシンプルなシステムを持っています。
セカンダリプール「ストレージ/データ」は、「タンク/データ」の複製スナップショットを保持するように設計されています。
「タンク/データ」と「ストレージ/データ」の両方は、異なるキーを使用して暗号化されたデータセットです。
foo@BAR:~# zfs list -t snap | grep -v boot
NAME USED AVAIL REFER MOUNTPOINT
reservoir/data@auto-2020-11-24_20-50 258M - 16.5T -
tank/data@auto-2020-11-24_20-50 34.8G - 16.5T -
tank/data@auto-2020-12-01_00-00 128M - 16.7T -
tank/data@auto-2020-12-05_09-59 17.4G - 16.8T -
tank/data@manual-2020-12-06_21-12 46.7G - 16.9T -
以下を使用して初期コピーを作成できました。
zfs send "tank/data@auto-2020-11-24_20-50" | pv | zfs recv -Fdu "reservoir"
しかし、その後のスナップショットをコピーする方法はわかりませんでした。
pv
テスト実行フラグを使用して各送受信を実行し、-n
コピーストリームが得られたときに送信されるデータの量がデルタに含まれると予想したものよりはるかに高いことがわかり、中断しました。それ!
間違い:
zfs send -R -I "tank/data@auto-2020-12-01_00-00" "tank/data@manual-2020-12-06_21-12" | pv | zfs recv -n -Fdu "reservoir"
タンク/データ@manual-2020-12-06_21-12を送信できません。暗号化されたデータセットタンク/データは、元のフラグを持たない属性と一緒に送信できません。
もう少し詳しく調べたところ、元のコピーフローの痕跡がman zfs-send
見つかりましたが、-w
理解するのが困難です。
あまりにも多くのデータが送信されているようです!
zfs send -R -w -I "tank/data@auto-2020-12-01_00-00" "tank/data@manual-2020-12-06_21-12" | zfs recv -n -Fdu "貯水池"
誰もが正しい方向に私を指すことができますか?
よろしくお願いします。