Don't have enough cash for a new server? Darren Yates looks at your options for building a home server without spending a cent, including portable servers with UPS.
These days, there's almost an unwritten rule in most homes: you need at least one computer system for each person and one central system that everyone congregates around, whether it's for streaming music, swapping files or accessing the house printer. I call it the 'one each and one for the pot' rule.
But frankly, I reckon spending money on server hardware could be a waste given the number of PC and laptop carcasses most of us have lying around. That old computer might no longer be up to handling Battlefield 3, but you can give it a dignified retirement working as a home server. Do it right and you can build a server out of gear you already own — all without spending a cent.
Netbooks make great basic file servers.
Hardware options — the retired desktop PC
Thanks to Microsoft's procrastination in giving us Windows Vista, there are plenty of Windows XP desktops gathering dust that should be your first port of call. As for what you can get it to do as a server, that'll depend on two key factors — the processor and the storage options. For the CPU, we'll keep it simple — if you've only got a single-core CPU, like an old Pentium 4, it'll handle basic file and print serving. Dual-core systems can ratchet this up a notch to live streaming and transcoding up to SD (DVD-resolution) video, and quad-core systems should be able to live-stream up to 1080p video.
Keeping this down to a budget of zero dollars puts the brakes on adding new gear, so you'll need to be a bit inventive and use whatever you have lying around. This is where USB is really handy. For example, if you have an old 80GB portable drive, whack it into a USB port and gain the extra space.
This isn't to say you can't use a Pentium 4 to send your 1080p videos across the network — but with limited CPU speed and possibly little storage, you need to be efficient. That's why you need to pre-encode your videos using H.264 compression and a two-pass encoding process. H.264 is about as efficient in terms of quality versus space as you'll get and a two-pass encoding system will ensure you get the best-quality encoding you can for the smallest amount of space. As a guide, you should be able to squish a two-hour DVD movie into 1.5GB of space with H.264, so that's around 160 movies on a 250GB hard drive. The other important benefit of H.264 and the MP4 file container is that they support 'progressive streaming', which means that instead of some players and tablets having to download the entire file before they begin to play the video, they'll start playing in a few seconds while the file downloads in the background. It's not the same as live streaming, where the video data is played and instantly discarded, but it requires far less horsepower.
Hardware options — the old notebook
These days however, I'm much more up for using an old laptop as a server. We've had the benefit of cheap laptops for a few years now and most of us have one or two lying around. But with their smaller space requirements, lower power consumption and lower noise levels, they're well worth considering.
The other benefit, provided the notebook battery is still up and running, is that you've basically got a built-in uninterruptible power supply (UPS). Even if you only get 30 minutes out of the battery now, that should still be plenty to get the server to gracefully shut down and preserve your system, rather than have it fall over in a screaming heap.
The one difference, however, is that most serious servers running via a UPS also have a USB trigger that auto-initiates that graceful power down — but laptops don't have it. So we've come up with a utility to fix this called 'APC ServerPowerTimer' (see the right box for details).
The downside is that laptops won't match desktops of a similar era for storage or CPU performance, especially going back a few years. Still, dual-core laptops have been selling for under $500 for the last two or three years, so depending on what you've got, you should be able to at least do the print/file/torrent server option.
Option 1: Use the original
Chances are your old desktop or laptop still has a working copy of Windows, which is likely to be Windows XP or, if you're really unlucky, Vista. But again, these OSs are more than enough to press into service for your zero-cost home server. Windows XP, even Home Edition, does the job here and provided you already have all device drivers installed, it's the simplest option. What I'd recommend is installing the OS from scratch, provided you have the original installation discs — this'll ensure you're starting with a clean slate.
Option 2: Install a Linux distro
If you no longer have the original OS, Linux is my favourite replacement, having developed a couple of UserOS Home Server operating systems for our old sister publication PC User. The beauty of Linux here is you can choose your distro to suit your needs — everything from a lean server-focused distro such as FreeNAS to a light GUI-based distro such as Xubuntu - or go for the latest release of Linux Mint with the MATE (formerly GNOME 2) desktop environment.
The key thing is to go for a lightweight OS, which really means steering clear of GNOME 3 or KDE, or distros loaded up with OpenOffice. The more work your server has to do keeping the desktop environment ticking over (or the more irrelevant apps you load it up with) the less space and time it'll have to do what it's meant to.
Linux is a great option for a home server.
In the end, there's nothing magical about a home server. In fact, they're often just ordinary computers being pressed into a different role. So if you've got a spare desktop or laptop lying around, don't waste it — get it working as a home server!