Setting up a home server - what to use? (ZFS vs btrfs, BSD vs Linux, misc other requirements)

FreeBSD and OpenSolaris seem to be the best choices for hosting ZFS

With OpenSolaris, ZFS is usually versions/features/bug-fixes ahead.

OpenSolaris' hardware support is nowhere near as good as e.g. Ubuntu

Hardware support is getting much better with recent OpenSolaris builds but as long as your hardware is supported that shouldn't really matter.

ZFS doesn't let you (easily?) add new discs to a RAID5 or RAID-Z

You cannot add a single disk to a raidz but you can add another raidz to the pool where your first raidz is. The only drawback is you need to add multiple disks at the same time.

reading around, it seems that ZFS is a bit short of tools for recovering lost data

The point is ZFS doesn't lose data by design so recovering tools are of little purpose, outside the self-healing built in ones.


I've recently built a system that has some of the mentioned features.

It's based on an Atom Supermicro-System:
www.supermicro.com/products/system/1U/5015/SYS-5015A-H.cfm?typ=H

One 2-eSata-Port SIL3132-based PCIe-SATA Card
like this one: www.cooldrives.com/2poespcrasai.html

One (2 can be connected) SATA Port Multiplier for 5 Disks (Sil 3726)
like this one: www.cooldrives.com/cosapomubrso.html

The System run's FreeBSD 8.0 from a smal 2,5" internal SATA-Disk and has currently 3 1TB Disk connected to the Portmultiplier. The Filesystem on the external Disks is ZFS. One important thing is the following line in /boot/loader.conf
siis_load="YES"

I also have run iozone on this system an it performs not bad for 3 energy saving 5600rpm Drives

You should also think about the start current from the Disks. I have taped Pin 11 (pinouts.ru/Power/sata-power_pinout.shtml) of the Power connectors so the drives don't spin up simultaneously.

If you don't want it in an 19"-Case you can use the second PCIe Port on the Board for a 2nd Controller with 2 Ports for additional 10 Disks.

Some points from your Post:

  • Adding Disks to the ZFS-Pool is realy easy
  • I don't stream Media to Devices but there should be some piece of Software in the Ports collection (www.freshports.org/audio/mt-daapd/)
  • The PVR-Part can be the hardest because of hardwaresupport (http://www.freshports.org/multimedia/mythtv)
  • www.freshports.org/devel/mercurial/ -> Version controll
  • ZFS is short of recoverytools because you don't realy need them. While testing I've tried to corrupt the Filesystem but no luck with this. :-)

SMB, SSH, NFS, Webserver, Nagios, MRTG/Cacti, BT are no real Problems

Good Luck with your decision and your Backup