This page details my budget build of a 4TB NAS based on Solaris and ZFS.

Bill of Materials Price
Motherboard: BIOSTAR TA890GXB $95
Memory: PNY Optima 4GB DDR3 1333MHz $39
Power Supply: Ultra 750W (already owned) $70
Optical Drive: LG GH22NS50AUAU DVD Writer - DVD+R 22x, DVD+RW 8X, DVD-RW 6x, DVD-RAM 12x, SATA (already owned) $30
Hard Disks (System): WD 160GB SATA 3Gbps 2x $23
Hard Disks (Data): Seagate Barracuda Green 2TB SATA 6Gbps 3x $80
Case: Ultra eXo ATX Mid-Tower Aluminum Case (already owned) $70
New Parts   $483
Recycled Parts   $170
Total   $653

This system is a replacement for an older and much smaller NAS I put together from old parts. The old system was 32-bit based and lacked onboard SATA support because it was manufactured before SATA was in existance. The 1TB limitation on 32-bit Solaris makes upgrading to larger drives a silly move. Why purchase a 1TB drive when you can purchase a 2TB drive for 10 dollars more?

The new system is a 64-bit dual core AMD running at 3.1GHz with 4GB of memory. The system disks which hold the OS and other essential data are configured in a ZFS mirror for redundancy. I’ve found that most of my Solaris installations with all the random server software I use normally consume about 30GB; the disks I bought hold 160GB and should be more than sufficient. With 6 SATA ports available on the motherboard and one used by the DVD drive and two used by the system disks I have room to support three SATA dsks for data storage. Additional data drives can be added later by using a PCI-e SATA/SAS add-on card. For more information on Solaris compatible SATA/SAS cards see this excellent blog post.

The three data drives are 2TB. Simple math says this system can hold 6TB of data, but that would be without redundancy and would offer no protection against a disk failure. To gain protection against a single disk failure the disks are setup in a RAID-Z1 configuration which gives us 4TB of usable space. For more information on RAID-Z requirements see RAIDZ Configuration Requirements and Recommendations.