Возникла необходимость перенести ZFS систему на другой диск, теории начитался, но ни одного «боевого» решения не нашел.
За оказанную помощь при решении вопроса большой салам засылается taurus'у c iXBT.
Попытаюсь расписать подробнее, чтобы было меньше вопросов у народа.

Имеем рабочий диск:

# uname -a
FreeBSD 8.2-RELEASE FreeBSD 8.2-RELEASE #0 r219081M: Wed Mar  2 08:29:52 CET 2011
root@www4:/usr/obj/usr/src/sys/GENERIC  amd64
# gpart show
=>       34  976773101  ada0  GPT  (466G)
34        128    1  freebsd-boot  (64K)
162    8388608    2  freebsd-swap  (4.0G)
8388770  104857600    3  freebsd-zfs   (50G)
113246370  863526765           - free -  (412G)

системный пул myboot находится на 3-ей партиции

# zfs list
myboot           4.33G  44.6G    21K  none
myboot/root      4.33G  44.6G  3.93G  /
myboot/root/tmp   228K  44.6G   228K  /tmp
myboot/root/var   344M  44.6G   301M  /var

У меня был новый 2.5' HDD 60gb, в системе отбился как ad1
Создаем GPT разметку:

# gpart create -s GPT ad1
ad1 created

создаем загрузочный партишн:

# gpart add -s 128k -t freebsd-boot -l boot ad1
ad1p1 added

4Gb партишн для swap:

# gpart add -b 290 -s 4g -t freebsd-swap -l swap ad1
ad1p2 added

и партишн для системы:

# gpart add -t freebsd-zfs -l data ad1
ad1p3 added

#

gpart show
=>       34  117208060  ad1  GPT  (56G)
34        256    1  freebsd-boot  (128K)
290    8388608    2  freebsd-swap  (4.0G)
8388898  108815100    3  freebsd-zfs   (52G) 

в boot записал gptzfsboot-загрузчик и protective MBR:

# gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 ad1
boot added ad1

создал пул zroot для системы на новом HDD:

# zpool create -m /mnt zroot /dev/gpt/data

делаем снимок старой системы:

# zfs snapshot -r myboot@2013-01-14

(ключ -r — рекурсивный снимок всех дочерних FS)

# zfs list -t snapshot
NAME                         USED  AVAIL  REFER  MOUNTPOINT
myboot@2013-01-14               0      -    21K  -
myboot/root@2013-01-14      59,1M      -  3,93G  -
myboot/root/tmp@2013-01-14    53K      -   228K  -
myboot/root/var@2013-01-14  42,8M      -   297M  -

передаем данные со старого пула в новый на этой же машине:

# zfs send -vR myboot@2013-01-14 | zfs receive -vFd zroot

либо подключаем новый HDD на другой машине,
предварительно загрузившись с LiveCD и на старой системе выполняем:

# zfs send -vR myboot@2013-01-14 | ssh 192.168.x.x zfs receive -vFd zroot

где 192.168.x.x — IP 2-ой машины
теперь, либо выключаем 1-ый комп и меняем старый HDD на новый, либо
продолжаем на 2-ой машине.
Грузимся с LiveCD, затем
монтируем пул в /mnt и прописываем кэш файл:

# zpool import -o cachefile=/tmp/zpool.cache -o altroot=/mnt zroot
# cp /tmp/zpool.cache /mnt/boot/zfs
# zfs list
NAME              USED  AVAIL  REFER  MOUNTPOINT
zroot           4.33G  44.6G    21K  none
zroot/root      4.33G  44.6G  3.93G  /mnt
zroot/root/tmp   228K  44.6G   228K  /mnt/tmp
zroot/root/var   344M  44.6G   301M  /mnt/var
# echo 'zfs_enable="YES"' >> /mnt/etc/rc.conf
# echo 'zfs_load="YES"' >> /mnt/boot/loader.conf
# echo 'vfs.root.mountfrom="zfs:/zroot/root"' >> /mnt/boot/loader.conf

либо проверяем их наличие

# cat /mnt/boot/loader.conf | more
# cat /mnt/etc/rc.conf | more

перемонтируем FS

# zfs unmount -a
# zpool set cachefile='' zroot
# zfs set mountpoint=legacy zroot/root
# zfs set mountpoint=/var zroot/root/var
# zfs set mountpoint=/tmp zroot/root/tmp
# zpool set bootfs=zroot/root zroot
# reboot

Все, после ребута система нормально прогрузилась с нового HDD.

сделал снапшот для кадого раздела ФС

1 zfs snapshot zraid@24012011
2 zfs snapshot zraid/usr@24012011
3 zfs snapshot zraid/var@24012011
4 zfs snapshot zraid/tmp@24012011

потом передал с этого снепшота в другой пул инфу

1 zfs send zraid@24012011 | zfs receive zroot
2 zfs send zraid/usr@24012011 | zfs receive zroot/usr
3 zfs send zraid/var@24012011 | zfs receive zroot/var
4 zfs send zraid/tmp@24012011 | zfs receive zroot/tmp

поправил название пула откуда грузимся в /zroot/boot/loader.conf

1 vfs.root.mountfrom="zfs:zroot"

поправил точки монтирования

1 zfsset mountpoint=/usr zroot/usr
2 zfsset mountpoint=/var zroot/var
3 zfsset mountpoint=/tmp zroot/tmp