It’s been more than 4 years since I wrote about home servers, but my Ubuntu Home Server article was, for a while, the most popular post on this blog. Since moving to the UK though, I’ve taken a more appliance-based approach to my home network. For the last few years I’ve been using a Boxee Box for media playback, and a 4-bay Netgear ReadyNAS duo NV2+ for storage, mainly to keep the bulk of my possessions to a minimum.
The appliance approach does have advantages. It is power efficient, easy to setup, and very low maintenance. But after getting an internet connection with decent upload speed, I wanted to run CrashPlan on the NAS without having to have another PC running. I managed to get it running by following directions I found here.
There’s just one problem:
Performance is abysmal, and I’ve only selected the most important data – my photos. I’m limited not by my internet connection, but by the NAS’s anaemic CPU and lack of ram (just 256Mb). Furthermore, it’s always had very slow read and write speeds – generally around 2Mb/sec, and loading a large directory via its Samba shares can take a while.
So I started to look for a replacement. My requirements:
- Minimum 2GB ram
- Strong CPU, preferably x86
- 4+ drive bays
- Linux based OS
- Root access to said OS
The best pre-built option I could find which meets those requirements is the Thecus N5550, but at £383 it is a long way from cheap. And it barely meets the specs; an Atom CPU is strong for a NAS but not by modern x86 standards.
While the customised software shipped with a NAS does offer some conveniences, it also gets in the way of using newer Linux features such as BTFS RAID 5/6 (which is currently not considered stable but should be within the next 12 months). You’re also reliant on the vendor for distribution upgrades, and the priority is going to be shiny features which consumers will appreciate, not keeping the foundation OS up to date. The ReadyNAS NV2+ is currently running Debian Squeeze, and will be until the day support ends.
At this point I realised that a pre-made NAS with the level of power and flexibility I wanted doesn’t exist at a realistic price point. And with the end of Boxee support its days as a useful device are numbered, so a HTPC could be on the cards as well. It’s time to build my own server again.
A lot has changed since 2010
Compared to 4 years ago we now have:
- Wide availability of M-ITX motherboards and cases
- Cheaper, lower power CPUs
- Increasing maturity of XBMC, and Linux home software in general
- A stable, next-generation file system in Linux (btrfs)
The M-ITX ‘standard’ (it’s not as well defined as ATX/M-ATX) is crucial. M-ITX emphasises very small size, which in turn requires greater power efficiency. Combined with Intel and AMD’s increasing integration of functionality into the CPU, we can get powerful and feature-rich motherboards in a very small package. Remember the north bridge and south bridge on old motherboards? That’s all in the CPU these days.
While you could get ITX boards in 2010, they were either very expensive, or horribly under powered. Today it is easier than ever (and cheaper) to build a quiet and compact PC that fits into your living room.
Compared to the build I did 4 years ago, Al4 Server version 2 will be smaller, cheaper, have more connectivity options (WiFi, DisplayPort, HDMI, USB3), use less power, and perform significantly faster.
Building a modern home server
My requirements, in order of priority are:
- At least four 3.5″ hard drive bays
- Small footprint
- HDMI output
- Attractive and understated design
- Hot-swap drive bays would be nice to have
I came up with three basic configurations, high-end, mid-range and low-end configurations. Even the low-end configuration stomps all over any pre-built NAS in its price range, but you do lose the convenience of external front-facing drive bays. My general recommendations are in bold.
Some extra notes, and my thoughts behind the hardware choices are below.
The main sticking point is the number of SATA ports – there aren’t many cheap ITX motherboards with 4+ SATA ports, but stepping up to Intel H97 and Z97 boards does give you options. Be aware that if you opt for the low-end Q1900 ITX board that it only has 4 – if you plan to run more than 3 hard drives in your array, it would pay to step up to a socketed solution.
After reading a few articles (this Anandtech article was very helpful), I opted for ASRock Z97 board because I valued the 6 SATA ports, HDMI passthrough and the superior audio codec over an extra LAN port. The reduced CPU performance compared to other Z97 boards is because ASRock don’t enable “multicore enhancement” by default, which is effectively a factory overclock and runs counter to the goal of low power consumption!
The Gigabyte Z97N-WIFI would be my second Z97 choice, it also has 6 SATA ports but the audio codec and HDMI passthrough was enough to swing me in ASRock’s direction.
At the time of ordering though, I hadn’t noticed the H97 boards, which are practically equivalent to Z97 for this purpose and up to £30 cheaper. Thus, H97 gets the general recommendation here, but note that the ASRock H97 has 1 less SATA port than the Z97 version, which could be crucial. It also sacrifices an HDMI port (and thus HDMI passthrough), and the DisplayPort connector for a VGA connector.
The Gigabyte H97N-WIFI keeps the 6 SATA ports from the Z97 version, but it isn’t much cheaper. So if you want H97, ASRock seems to be the logical choice once again, unless you think you might need that 6th SATA port.
The AMD AM1 platform is very interesting, and power and performance wise they are certainly a valid alternative to the Intel-based options I’ve presented here. You can get a 35W quad core CPU which outperforms the equivalent Intel at heavily multithreaded and graphical workloads, but loses out at single-threaded ones.
The main issue with cheaper boards (especially AM1) is the number of SATA ports. That £22 AM1 board looks great at first glance, but then you’ll have to add a RAID controller, which, unless you spend a lot, will be less reliable than onboard SATA ports. Then when you consider that the ASRock H97 includes WiFi, a better audio codec, more USB, connectivity and video output options in addition to 3 extra SATA ports, the extra £50 doesn’t seem so bad.
If you’re building a simple HTPC though, or happy to use only two SATA disks and a USB or mSATA boot drive, the AMD AM1 boards make a lot of sense, and the platform as whole represents a really good bargain.
Techspot’s budget CPU roundup was very useful here.
I don’t really see much point in going for anything faster than the Haswell Celeron, but your requirements may differ. You can easily swap out a faster CPU, the motherboard and power supply will easily handle it, and the case has room for a larger cooler if you want to keep it quiet. Make sure you go for 4th generation cpus (Haswell) as the power improvements are especially relevant for a 24/7 machine.
I went with single DIMMS in all cases, because 2GB/4GB is plenty and I want the option to upgrade further down the line. Two DIMMS does give more theoretical performance, but the impact is not going to be significant for our purposes, and running a single DIMM should save a bit of power as well.
I don’t see the point in spending big bucks on a fast SSD. The important thing is fast reads for bootup and caching, and a mainstream SSD will achieve this just fine. I do think it is important to keep the OS away from the RAID array though, hence the recommendation to use a USB flash drive for the OS if you don’t want to splurge for a full internal SSD. SATA port use may also be a factor, especially in a low-end build.
This one was a little challenging. There are a lot of mini-itx cases suitable for a HTPC or gaming rig, but not so many that emphasise storage.
I settled on the Fractal Node for all the builds because it has six 3.5″ bays which is not matched by any other case even close to its size, and its build quality and workmanship are well above average. Simply, put I don’t think there’s a better option for a small NAS at any price range, but I’d be interested to hear any suggestions. The Cooler Master Elite 130 seems like good value for money, but you’d struggle to fit many drives in it – this one is very much ‘general purpose’. It’s also longer than the Fractal to boot.
The Fractal isn’t the cheapest option, but for a compact home NAS, I think it is the best value.
I never skimp on power supplies, in fact the Corsair builder series are as cheap as I would go. A solid power supply means better reliability, lower noise, lower power consumption, and increased component lifespan. Having said that, power requirements for this build are very modest so it’s not worth spending big bucks either. The only difference is, for the high-end build I opted for an 80+ Gold model (the other two use 80+ Bronze models), but for my own I’m using a spare Seasonic S12 II 300W left over from a previous build.
Don’t buy a higher-rated PSU though. In fact, if you can find an efficient 250-300W model, it could perform better than the 400W+ models above as lower-rated PSUs reach their peak efficiency at lower power levels. The mid-range build, even with 4 disks, couldn’t push 100W if it tried.
Comparing the low-end build to what I spent on the Netgear NAS made me weep. The Celeron solution costs just £30 more for 8x the ram and 50x more CPU performance, but to be fair to Netgear, Bay Trail CPUs weren’t available at the time. At least I can reuse the disks, which were actually the main expense (I haven’t included the cost of disks here, because the cost is the same as pre-made NAS boxes).
Of course, the value in a pre-packaged NAS is the software and convenience, but hopefully I can show you in this series of articles that most of the heavy lifting is done by the open source software they all use. Really, all you’re getting with the NAS manufacturers is a pretty GUI and a few cloud services of questionable utility.
This time around, the decision to build my own server was a no-brainer. I’ve ordered the bolded configuration above, with the exception of the SSD, power supply (using spare parts) and motherboard, so for now I have to sit tight and wait for the parts to arrive. Unfortunately, the case is on back order – I wanted the black version, which seems to be in shorter supply than the white one.
For information on how I setup Ubuntu on this server, see Ubuntu Home Server 14.04.
Some links in this article are affiliate links, which pay a commission if you purchase after clicking them. This site is a hobby and runs at a loss, so any revenue helps pay for server costs. Thanks for your support!