Using GTP and glabel for ZFS arrays

Freddie Cash fjwcash at
Sat Jul 24 02:25:22 UTC 2010

On Fri, Jul 23, 2010 at 6:33 PM, Dan Langille <dan at> wrote:
> Pawell and I had an online chat about part of my strategy.  To be clear:
> I have a 5x2TB raidz1 array.
> I have 2x2TB empty HDD
> My goal was to go to raidz2 by:
> - copy data to empty HDD
> - redo the zpool to be raidz2
> - copy back the data
> - add in the two previously empty HDD to the zpol
> I now understand that after a raidz array has been created, you can't add a
> new HDD to it.  I'd like to, but it sounds like you cannot.
> "It is not possible to add a disk as a column to a RAID-Z, RAID-Z2, or
> RAID-Z3 vdev."
> So, it seems I have a 5-HDD zpool and it's going to stay that way.

You can fake it out by using sparse files for members of the new
raidz2 vdev (when creating the vdev), then offline the file-based
members so that you are running a degraded pool, copy the data to the
pool, then replace the file-based members with physical harddrives.

I've posted a theoretical method for doing so here:

It's theoretical as I have not investigated how to create sparse files
on FreeBSD, nor have I done this.  It's based on several posts to the
zfs-discuss mailing list where several people have done this on

Freddie Cash
fjwcash at

More information about the freebsd-stable mailing list