Ubuntu Home Server: The Beginning

My Ubuntu Home Server caseAs I previously mentioned, Windows Home Server is all but dead to me now that Microsoft is killing the Drive Extender technology. So the search was on for an alternative. As the name of this post implies, I’ve made a decision. Here’s how I came to it.

Just days before Microsoft’s announcement I wrote about how I use Windows Home Server. My primary use is for file storage. Every file of any significance is on it, including my iTunes and Video libraries. Music and Video are on the server simply as files, there’s not management/streaming software actually running in the server. I also use it for PC backups but since all my data is on the server it’s not a critical piece. I’ll want to do something in case I need to rebuild my PC, but it doesn’t have to be something the server does.

The other requirement is that it needs to work with my new hardware. Moving Windows Home Server V1 to the new hardware is a viable option, at least for the next year. So anything I looked at was compared to WHS v1.

I’ve also been researching ways to manage my music and video libraries, which is currently done with iTunes but I haven’t seen anything, for any OS, that has me excited. So at this point what I want is flexibility.

So to to sum up my requirements:

  • Lot’s of file storage. I currently have 5TB worth of data and expect dramatic growth in my video, music and photo libraries. My new hardware can hold 10TB before data protection under WHS. (I turn on duplication for everything)
  • Good data redundancy. I doesn’t count as a backup, but hard drive failures will occur at the worst possible time so I want the files fully accessible should a hard drive fail. The new hardware has 12 drives, the odds are against me.
  • The files need to be accessible from both Windows and Macs. Might as well throw Linux in there too.
  • No new hardware needed.

I looked at Amahi Home Server and it seems interesting. But I decided not to test it out. It is on my list to look at if I get a chance, but I’m not willing to commit to a full blown managed server. It has a lot of features, many I won’t use. It seems to have a level of complexity I don’t want.

I decided to go with a plain old Linus server running Samba for file sharing. Since my web server is Ubuntu I’m most familiar with it and decided to stick with it. My main concern was how to do RAID, or RAID like data protection. Only 4 of my 12 SATA ports are on a card that can do real hardware RAID. The rest are on the motherboard which does fake RAID. (Fake RAID is when the PC’s cpu provides the RAID processing, and not hardware on the controller.) I’ve never really trusted Motherboard based RAID but I had been using it to mirror the Vail OS in testing. As it is, most Linux distro’s are flaky (at best) with fake RAID.

So RAID through the motherboard BIOS was out which meant the best I could do via hardware was a 4 drive RAID 5 array using my 3ware card. But my research found good things said about software RAID in Linux, using mdadm. This was a flexible solution that seemed reliable, so I moved forward with it.

I spent some time over the long weekend installing Ubuntu Server using different RAID array configurations and breaking the arrays to make sure they would rebuild without a problem. Everything seemed fine. The only minor hitch was when I broke the OS mirror I needed to reboot before I could add the drive back in. Removing or adding the drive resulted in a not found error. That is until I rebooted which seemed to cleanly remove the drive and I could re-add it.

So as it stands now I installed Ubuntu Server 10.04.1 into what I think I want as my configuration. I picked 10.04 rather than the newer 10.10 because Ubuntu 10.04 is the long term support version and I won’t be forced into an upgrade 18 months down the road. I have until April 2015 before it end of life’s.

I used software RAID (mdadm) all around. The root and swap partitions are mirrored using the WD 320GB. I ended up putting all ten of the 2TB drives in a RAID 6 array. RAID 6 can survive two drive failures as there are two parity bits. In what may be overkill I included one hot spare.

Considering I had planned to lose half my space to duplication under Windows Home Server this is an improvement. Currently 30% of my space is for protection but the percentage will decrease as I add drives. My testing showed that resyncing the array takes a long time. The initial sync for my 13TB array took over a day (with the server under pretty heavy use). So the hot spare will get the rebuild going without me needing to do anything (at least in theory) and being able to lose two drives simultaneously makes me feel more secure.

I also installed LVM and created on logical volume for the data array. The theory is I can easily add drives to increase the space, although my testing hasn’t gone far enough to prove this.

As I write this tonight all my non-video data is on the Ubuntu Home Server and the RAID array finished it’s initial syncing a little while ago. I start copying the video files tonight but that’s going to take about a day to copy. All the data is still on the Windows Home Server in case I need to go back, but I’ve blocked access so I don’t save data there by accident. I have two more days off so can spend some additional time testing things out. But so far things look good and I plan to continue down the Ubuntu Home Server path. Next on the agenda is a PC backup solution that will be similar to Windows Home Server.

5 thoughts on “Ubuntu Home Server: The Beginning”

  1. Hello. I have been following your site for a while now and think what you are doing is great. I also built a WHS with 5 TB of storage and so far is has worked well.

    Would you mind listing the hardware that you are using for your new Linux server?

    Thank you for posting all of these tips.

    • Hi Dennis. I'm using the same hardware that had been my Vail server. All the drivers were included in Ubuntu.
      Motherboard: GIGABYTE GA-P55-USB3 LGA
      CPU: Core i3-530
      RAM: 8GB which was a little overkill for Vail but a lot of overkill for Linux. I haven't done any real testing, but whenever I check the available memory is well over 7GB.
      Two 320GB Western Digital Scorpio Black laptop drives for the OS (as a mirror)
      Ten 2TB drives of various brands (Western Digital, Hitachi and Samsung). So far the Linux software RAID doesn't seem to mind different hard drives.
      Eight SATA ports are from the motherboard and another 4 come from a 3Ware controller.

      I did cover the hardware and build in more detail here. At the time I wrote that article the Linux install was only a few hours old and was my first attempt. I've since changed it and hope to get another article up later this week to cover what I've ended up doing.

  2. Thank you for the info. I will post what I have in my WHS and see if you have any comments on it. I would like to use Linux for my sever but not sure I can afford to build another box just to move stuff from WHS to it.



  3. Hello.

    Live got and the holiday's got in the way as it usually does.

    I finally have a list of what I put together for my WHS. I am very interested in following your path to the Linux server as I think I will do the same. Just don't yet know how to move my files and use this system as the Linux server.

    If you like I can send you a pic of it.



    Element G



    650 Watt Supply

    Main Circuit Board



    2.80 gigahertz Intel Pentium Dual-Core


    2 Gigabytes Memory

    Drives (5 total)

    All Western Digital

    System Drive 500 GB

    Data Drives: 4 – 1 TB

  4. @Dennis – Hi Dennis. Like you, I haven't done much more since the holidays. I've been re-ripping my DVDs so the file usage has been growing. And I'm pretty much also at the point where if I decide to change paths I'm going to have some issues moving the files around. I took advantage of the server being a completely new build and moved files over the network using robocopy. I also have one of the toaster style external drives where a drive can be easily swapped. I tend to buy drives as they go on sale so while all my 2TB are being used I have a collection of smaller drives I can use to hold files. It's a pain but workable if you have the drives.

    I like your hardware. Not familiar with the Thermaltake cases but seems sweet as does the other hardware. It should work well with Ubuntu.

Comments are closed.

%d bloggers like this: