• Some users have recently had their accounts hijacked. It seems that the now defunct EVGA forums might have compromised your password there and seems many are using the same PW here. We would suggest you UPDATE YOUR PASSWORD and TURN ON 2FA for your account here to further secure it. None of the compromised accounts had 2FA turned on.
    Once you have enabled 2FA, your account will be updated soon to show a badge, letting other members know that you use 2FA to protect your account. This should be beneficial for everyone that uses FSFT.

ZFS migration

Joined
Dec 25, 2011
Messages
50
I have a zfs pool on a 2x4TB mirror that I want to move to a new 6x8TB raidz2 array. What is the best way to move the data from the first to second array? I have just used "cp" in the past but that seems to leave me with fragmentation >24%.
 
Generally you'd probably want to use zfs send / zfs receive. It can be done over the network through SSH, but if it's on the same machine it's even easier. It's probably the most secure way to transfer.

I use rsync a lot as well, as it can do checksum, but I only use that for partial file transfers (i.e. my backups are on two different external drives).

Sending and Receiving ZFS Data - Oracle Solaris ZFS Administration Guide
 
It is on the same machine. Does OmniOS support rsync? Does zfs send / zfs support increasing the size of an array (ie. going from a vdev of 2 4TB drives to a vdev of 6 8TB drives)?
 
The best way to migrate to a new pool is replication of all filesystems with zfs send to the new pool as this the fastest way and it preserves ZFS attributes and ACL permissions.
You can also use rsync but it is slower and does not preserve ZFS attributes and ACL.

A minimal setup of OmniOS does not include rsync, you must install separatly. If you use napp-it, rsync is part of the setup in
/var/web-gui/data/tools/rsync/rsync

btw.
What you call an array is a pool build from vdevs in ZFS terminology. The old pool is build from one mirrored vdev, the new one from one raid-z2 vdev.
If you want to increase the size of a vdev, you can replace all disks with bigger ones. If you want to increase the pool size, you can also add more vdevs.
A single filesystem that you create in a pool has no size as it can use space dynamically up to poolsize. You manage capacity with quotas and reservations.
This concept of separating physical storage from logical storage is called storage virtualisation.
 
Back
Top