Is ZFS and RAID-Z worth using in home made NAS (freeNAS for example)

Features of ZFS and RAID-Z look vary promising. Looks like it is a perfect FS for home NAS solutions, poor man's Drobo things and alike.

Are there any drawbacks I should be aware of?


Snapshotting a filesystem is an amazing feeling, as geeky as that sounds. Knowing you can roll back in an instant is a relieving thought. Snapshots also take only a few seconds. A colleague and I recently deployed an OpenSolaris NAS for a smallish college (200+ students) for virtual machine iSCSI storage for Citrix XenServer, student file storage and administration files. Files are checksummed so you have the guarantee that if there is a bit error at the harddrive level that you'll find out instead of your files corrupting silently.

Having a bit of a budget we got a server with 9 disks, 2 for the OS mirrored using ZFS, 4 for data, 2 parity (using ZFS RAIDZ2) and 1 hot spare. Each was 1TB which brought it down to about 2.5T+ or thereabouts usable (you lose some space for the 1TB to 1TiB conversion and other overhead like filesystem data). Snapshotting the root storage pool took less than 2 seconds. When you go ZFS, you wonder how you'll ever go back, and why this isn't standard.

Snapshots can also be sent to another computer running the same version of ZFS using 'zfs send' which can be done over SSH. These changes are sent incrementally so there's no wastage there.

The only downside is knowing the right commands, although OpenSolaris has a nice scheduling manager for daily snapshots however I haven't used it. Sharing via iSCSI, CIFS/SMB, or NFS is fairly trivial - but in the latest version using the new framework COMSTAR yields some problems. Make sure you're using the right guide for your release if you go down this path. 2009.06 has a few changes since 2008.11 which I recommend. I wouldn't use it as a desktop either - Gnome and X seem a bit in need of attention.

Last thing: you need 512MB to 1G minimum of memory to let ZFS run smoothly. YMMV though, so give it a shot and see what you think.

Have a read through the docs: http://wikis.sun.com/display/BluePrints/Provisioning+with+iSCSI+and+Solaris+ZFS+in+10+Minutes

And maybe Lesser known Solaris Features http://www.c0t0d0s0.org/pages/lksfbook.html

And if you're feeling like testing some stuff http://www.solarisinternals.com/wiki/index.php/ZFS_Evil_Tuning_Guide

Oh and one last bit of information for anyone reading: make sure if you have a RAID card and you want to utilize the features of ZFS that it can serve up the disks in JBOD as opposed to a predetermined RAID configuration as dictated by the card. Enjoy!


If by NAS you mean (Open)Solaris or FreeBSD on PC hardware acting as a fileserver, then yes, it should be fine.

See this question on building your own NAS. You might find dedicated NAS software such as FreeNAS easier to setup and admin.


ZFS on a home NAS is great. I've have a FreeBSD server running ZFS for years (now upgraded to FreeBSD 8.2 with V15) and the recover aspects are one of the hidden gems.

I have a system that has a pair of 2TB drives in a ZFS mirror that crashed due to environmental reasons, when it came back up, it only took seconds for ZFS to correct the issues with drive. A standard RAID rebuild on 2TB drives takes a long time. I had another die because some of the internal fans died. This system had a 4 drive RAIDZ and it was able to recover all of the data loss in 5 minutes across a 2TB setup.

If you run FreeBSD with Samba and ZFS, you can combine the snapshots from the first answer with Recent Files (found in Vista and Windows 7) and then be able to older file versions using the windows GUI. See http://www.edplese.com/samba-with-zfs.html for details.


It can be worthwhile once you find hardware that works well with Solaris. I ended up using Nexenta for usability - it (mostly) uses familiar GNU command-line and Debian's package manager.

Here's my writeup of how it went.


It should be noted that due to licensing issues, the Linux ZFS implementation is somewhat crippled. It runs as a Userspace program, and has dramatically reduced performance, and iirc, a reduced feature set. Solaris and FreeBSD are the recommended OS choices, although Mac OSX has limited support.

Followup - The OSX port of ZFS has since become somewhat deprecated, I wouldn't recommend it for anything other than testing