With my previous file server down for the count, I decided to spend some money to build new home storage system.
Linux is the obvious choice. I took a quick peek at Nexenta, but decided that ZFS was probably overkill. The harder question for me was what Linux distribution? I took a look at Openfiler, but decided that I wanted to run a more “general purpose” distribution. Typically, Debian is my distribution of choice for servers. I narrowed it down to Debian or Ubuntu server, which is really a Debian derivative. I ended up going with Ubuntu, because I figured it would have the most bleeding edge enhancements. If stability was paramount, Debian would be the right choice.
I wanted to over-engineer the hardware configuration. My last file server had about 850 GB of usable storage, and it filled up quickly with pictures, videos, and legal music. I also used it for backup space. Even though software raid has come along way, I still wanted to use a hardware raid card. I ended up getting a fantastic deal on a 8 port 3ware SATA II raid card with a battery backup unit. Processing power was not really a concern, I just needed to get the cheapest PCI-X compatible motherboard I could find. I ended up setting on Tyan board for $66. For the enclosure, I picked up a cheapo Antec case with 6 drive bays for $50. The most important part of the file server server is obviously the disks. For my storage partition I chose 5 Western Digital 1 TB SATA drives in a big RAID-5 ARRAY.
- Tyan S5161G3NR-RS $66
- Corsair 1GB DDR2 $16
- Pentium D 940 3.2 GHZ $89
- 3ware 9550SX-8LP $150
- Antec Case $50
- 5 1TB drives $500
- 1 80GB drive $35
- Power Supply $100
- Grand total $1006
It really doesn’t need to be that expensive, you could easily bring that total down to $700. Use software RAID, an existing case, a cheaper power supply, and a cheaper CPU.
I installed Ubuntu Server on a single 80GB drive, and I have the huge array mounted on /home. With the large RAID 5 partition, I had to use GNU parted instead of Fdisk to partition. Fdisk has a 1.5TB partition limit. I also had to use the GPT partition format, since DOS partitions have 1.5 TB limitation as well. For the file-system, I decided to use EXT4, since its supported with latest edition of Ubuntu server. If you really care about your data, I would suggest using EXT3.
For file access, I’m using NFS4 for my Linux and OSX clients. SSHFS and Samba are enabled as well For alterting, I have 3ware’s management interface from the server. Not only can I login to see what’s going on with the array, but I will receive e-mail alerts if anything bad happens to the disks.
. I’m also using this server as my primary bittorrent client. I found Deluge, which is a modern bittorrent client written in python. My only two requirements were that it had a web interface, and it supported UPNP. Deluge has 3 different client options to chose from: GUI, Command Line, and Web. Running deluge in the background, I can access the web interface from any computer.
Overall, I’m very pleased with my current configuration. Its amazing what $1000 will get you these days..