I tried to do a backup of a ZFS filesystem this way:
1- took a snapshot
# zfs snapshot -r pool1/compressed-blade-backup@20110222
2- list that it is there:
# zfs list -t snapshot
NAME USED AVAIL REFER MOUNTPOINT
pool1/compressed-blade-backup@20110222 0 - 427G -
3- tried to send it to another disk
# zfs send pool1/compressed-blade-backup@20110222 | zfs receive -F ocean/blade-backup
However this failed (after a long time) with the following messages:
cannot receive new filesystem stream: dataset is busy
cannot unshare '/ocean/blade-backup'cannot receive new filesystem stream: invalid backup stream
cannot receive new filesystem stream: invalid backup stream
cannot unshare '/ocean/blade-backup'cannot receive new filesystem stream: invalid backup stream
cannot unshare '/ocean/blade-backup'cannot receive new filesystem stream: invalid backup stream
cannot receive new filesystem stream: invalid backup stream
Then my receiving filesystem became unavailable and could not be mounted. I had to stop the service and restart it.
4- /etc/init.d/zfsload stop
[...]
Samba sharing is not supported.
cannot unshare '/ocean/WD1T-backup'cannot unshare '/ocean'cannot unmount '/ocean': Invalid argument
Samba sharing is not supported.
cannot unmount '/ocean/WD1T-backup': No such file or directory
Samba sharing is not supported.
cannot unshare '/ocean'cannot unmount '/ocean': Invalid argument
Samba sharing is not supported.
cannot unmount '/pool0': Invalid argument
Samba sharing is not supported.
cannot unshare '/ocean'cannot unmount '/ocean': Invalid argument
Samba sharing is not supported.
[... lots of messages like these...]
However this eventually succeeded.
5- /etc/init.d/zfsload start
back to normal, but receiving filesystem is empty.
Filesystem 1K-blocks Used Available Use% Mounted on
ocean 1915746786 32 1915746754 1% /ocean
ocean/blade-backup 943718400 22 943718378 1% /ocean/blade-backup