<p>> If you are using zfs then why not use zfs send and zfs receive?<br>
><br>
> Rsync has to stat every file on both ends which can take a long time<br>
> with millions of files.  The zfs tools don't have to do any of that.</p>
<p>Because zfs send/receive doesn't work well if the target file system ever gets changed, even for something like an atime.  Basically, the file system can't be touched on the remote end, and you can't even set the read-only property, because that would be a filesystem-level change that wouls break the send/receive.  Unless I'm not understanding something.</p>