What is a file server?

Essentially, a file server is a computer that stores files, is attached to a network, and provides shared access of those files to multiple workstation computers.  File servers do not perform computational tasks - that is, they do not run programs for client machines.  Furthermore, they do not provide dynamic content like a web server.  Still further, file servers are not like database servers in that the former do not provide access to a shared database whereas the latter do.  File servers provide access to static files via a local intranet through Windows or Unix protocols as well as over the internet through file transfer or hypertext transfer protocols (FTP and HTTP). 

What can you do with a file server?

The primary function of a file server is storage.  For the home user, one central storage location can increase overall computing efficiency and reduce overall computing cost.  By placing all of your important files in a single location, you do not need to worry about different versions of files you're actively working on, wasting disk space by having multiple copies of less-than-important files scattered on different systems, backing up the right files onto the right backup storage medium from the right computer, making sure every PC in your home has access to the appropriate files, and so on. 

From a system builder's perspective, a file server can also liberate your various workstation computers from having to accommodate multiple hard drives, and decrease overall hard drive expenditures.  With the rise of SSDs, which offer tremendous performance at a high cost per GB, a file server can free workstations from the performance shackles of platter-based disks - an especially useful consideration for laptops and netbooks, where the small capacity of an SSD is often a deal breaker since these mobile computers usually can house only one drive.

A dedicated file server allows every user in a home - whether they're at home or on the road - to access every file they might need, regardless of which particular device they might be using at any given time.  Dedicated file servers also allow you to share your files with friends and coworkers - simply provide them with a URL, a login name and password, and specify what content they can access.  For example, maybe you'd like to share your kids' camp photos with the in-laws - but your cloud storage capacity won't fit all of those photos plus all of the other stuff you have stored in your cloud drive locker.  Maybe you'd like to share sensitive information with a colleague that you'd rather not upload to a server owned by Amazon or some other third party, but the files are too big to email.  Or maybe you'd simply like to access your 200GB library of MP3s while you're holed up in a hotel on business with nothing but your 60GB SSD-based netbook.  These few examples are really only the tip of the iceberg when it comes to the utility of a file server. 

That said, there are alternatives to a file server for all of these needs.  You could dump all of your photos onto a flash drive and give them to the in-laws the next time you see them - but you have to do this every time you want to share more photos - and who knows if you'll get your flash drives back?  You could mail a DVD-R to your colleague - but perhaps a DVD-R's ~4GB capacity is insufficient, and snail mail takes days if not weeks to be delivered.  If you're on the road, you could just bring along your portable external hard drive - which takes up space, and can be lost or stolen.  A file server is a simple, singular solution to all of these problems.  Home file servers do not require enterprise-grade hardware and can be very affordable.  They can also be made from power-sipping components that won't spike your electrical bill.

What considerations are important in building a file server?

Because the primary role of a file server is storage, this is the most important aspect to think about.  How much storage space do you need?  Do you want to share 50GB of photos taken on a point and shoot digital camera?  500GB of music?  2TB of movie DVD ISOs?  30TB of mixed media and work-related files?  Also, at what rate are your storage demands growing, and how easily do you want to be able to expand your file server?

How easily do you want to be able to administer your files?  Many of the more powerful file server operating systems are unfortunately not particularly easy to run for the non-IT professional.  However, there are file server OS's that are easy to run.  What about being able to recover your files in the event of catastrophe?  Placing your files in one computer is tantamount to putting all of your eggs in one basket, which can be risky.  What about security?  Anything on any sort of network is vulnerable to intrusion.  While this guide answers all of these questions, it is aimed at home users and therefore necessarily makes some sacrifices to storage space, administration capabilities, recoverability, and security - simply because home users typically can neither afford nor require professional-grade file server solutions.

Why build a file server instead of using NAS?

Simply put, a NAS (networked attached storage) device is a computer appliance.  It is built specifically to provide network-accessible storage.  NAS devices typically offer easier administration than file servers (some are a few mouse clicks away from plug and play operability), but are often limited by proprietary software, and are neither as capacious nor as expandable as a dedicated file server.  Further, higher-end NAS devices that can house as many hard drives as some of the builds outlined in this guide are more expensive than the file server alternative.  Finally, because they are designed with only one purpose in mind, they are not as flexible as a file server, which in a multi-system home, might need to be co-opted into a basic workstation at a later point in time.  That said, while NAS devices are outside the scope of this guide, they're worth investigating if you're not already familiar with them. 

This guide is laid out differently than my previous builder's guides in that rather than detailing specific systems at specific price points capable of performing specific tasks, it instead discusses options for operating systems and types of components and how these different options are best suited to addressing different needs.  That is, maybe you need a lot of storage space but you're not particularly concerned about backups.  Or perhaps you don't need much storage space at all but want to use a very straightforward file server operating system.  By mixing and matching recommendations to suit your needs, hopefully you'll be able to construct a file server with which you'll be pleased!

File Server Operating Systems
Comments Locked

152 Comments

View All Comments

  • GTaudiophile - Tuesday, September 6, 2011 - link

    I would be curious to know which type of RAID you all run. Perhaps we could do a poll?

    I assume that the three most popular types of RAID are RAID 0, RAID 5, RAID 1.

    I personally use RAID 1 and wonder why people poo-hoo it so much. I use it strictly as a backup+file hosting solution.
  • GTaudiophile - Tuesday, September 6, 2011 - link

    I should add ZFS to the list as well...

    RAID 0
    RAID 5
    RAID 1
    ZFS
  • compudaze - Tuesday, September 6, 2011 - link

    ZFS is a file system like EXT4, UFS or NTFS. RAID-Z [or RAID-Z1] could be considered the ZFS equivalent of RAID-5 while RAID-Z2 would be the ZFS equivalent of RAID-6.
  • jtag - Tuesday, September 6, 2011 - link

    For my (Linux) storage server I have a RAID6 with a hot spare. I started with RAID1 of two 2TB drives on this machine, added a third drive and converted to RAID5 with a reshape command a year later, then added two more drives and converted to RAID6 with another reshape, and finally added a hot spare a few months ago. The machine itself had a CPU upgrade (single core to two core) and a SATA card added when I moved to RAID6.

    There's nothing wrong with RAID1, it depends on your application - it didn't really make sense to continue with RAID1 when I started expanding my storage array, but my /boot partition is a small RAID1 at the start of all 5 active drives; if any drive fails, my machine should still boot. Grub (or I suspect any boot-loader) can't boot from a striped software RAID array. My Windows workstation is configured with a (hardware) RAID1, which paid off pretty quickly as one drive failed within weeks of getting it. My latest build has an SSD boot drive, so no RAID at all there.
  • Slaimus - Tuesday, September 6, 2011 - link

    For a server that is expected to have long uptimes, a benefit of running the Athlon II is that it is the only one in the review that supports ECC memory. Intel forces you to buy a Xeon to get ECC support.

    There is a reason all business file servers have ECC memory.
  • Vepsa - Tuesday, September 6, 2011 - link

    I used to use WHS v1, but when DE was removed from WHS 2011 I went looking for an alternative. I settled on Amahi. Runs on top of Fedora 14 (until 16 is final). Great product, fast & does more than just serve files.

    http://amahi.org
  • sligett - Wednesday, September 7, 2011 - link

    A newcomer to the "file server" OS stable is Resara Server. They offer a community version (free) as well as a supported version. See resara.org or resara.com. It's available as a VM or for Ubuntu. Administer it from Windows, Mac, or Linux. I'm using it for my Windows 7 clients.
  • dalmar72 - Wednesday, September 7, 2011 - link

    Unraid is also very simple to setup, it does cost money once you get past 3 drives, but not having to deal with hardware raid, and if you do lose more than one drive in an array, you don't lose everything. Alos you can grow the array at any time.
  • somedude1234 - Wednesday, September 7, 2011 - link

    I wanted to build a proper NAS to displace the expsnding pile of USB and eSATA attached HDDs that was becoming unmanagable. At the same time I needed to build a triple-head workstation. With VMware ESXi I was able to build a single system that does it all.

    Operating System / Storage Platform: VMWare ESXi / NexentaStor Community Edition (VM)
    CPU: Intel Xeon X3440
    Motherboard: SuperMicro X8SIA-F
    Chassis: Antec 900 v2
    Drives: 5x Samsung F4 HD204UI (data), 1x OCZ Vertex2 60GB (ESXi OS drive)
    RAM: 16GB (4x Kingston KVR1066D3Q8R7S/4G)
    Add-in Cards: Promise SATA 300 TX4, AMD Radeon 6850
    Power Supply: Seasonic SS-560KM
    Other Bits: Sound Blaster X-Fi Surround 5.1 Pro (USB Sound Card)
    Usage Profile: Home NAS, streaming media server, video transcoding, primary workstation

    Virtual Machines:
    - NexentaStor Community Edition (VMDirectPath for the on-board SATA controller)
    - Ubuntu 10.10 (32) running PS3 media server
    - Windows 7 Ultimate x64 (VMDirectPath for the AMD Radeon 6850 and one of the on-board USB controllers)

    The 5x Samsung 2TB drives make up a RAIDZ1 in Nexenta which is exported back to ESXi via NFS and to the rest of the network via CIFS. The Antec 900 lets me upgrade to a total of 15x drives over time by using 5-in-3 backplanes. At that point I'll install a SAS controller and pass that through to the storage VM.

    This is well overkill for just a file server, but for my needs it's been perfect. As an added bonus, I can reboot the Windows 7 workstation and/or Ubuntu VM's without affecting network access to the big data shares.
  • masterbm - Thursday, September 8, 2011 - link

    One thing I did is I built my file server into a Media center pc. Actually the original version was for just media center pc. The old version still functions as bedroom media center 1 tv tuner no hd.
    My build which has been running for almost 2 years nonstop is
    amd 620
    Gigabyte board am2+ with amd 780 chipset.s
    4 gb ddr 2 800 (2 2 gb sticks)
    zalman butterfly cooler for cpu.
    1 250 ide 7200 for boot drive( still using the orinigal format from the old machine)
    1 ide dvd drve
    4 2tb sata stoarge drives
    1 750 gb drive for music and tv record data
    2 ati 650 tv tuners both have ditgial cable box connected to them and the rf adatapter to run boxes) also both hd inputs are connected. Thought the rf adapter would be unstable but after some setup issue work fine for 4 months now.
    usb remote control.
    wireless keyboard and mouse
    then connected to 5.1 amp optical
    then connected to 1080 tv via usb using the onboard 4200 graphics (128 side port memory)
    I very much love this setup cpu has plenty of horse power to do media center play hd content effortless.
    I also enable muitlply rdp connections so I can admin box though another terminal. Or setup to encode videos.

Log in

Don't have an account? Sign up now