Add Me!Close Menu Navigation

Constant tinkering with all sorts of stuff: Macs, PCs, audio, video, music, radio, web, phones...

Add Me!Open Categories Menu

unRAID NAS server build

Too much or too little?

All my current machines have backups of backups be it via Time Machine and/or full images via SuperDuper! in various locations, but my rather large media archive had been sitting on a bunch of external drives plugged in to my Plex media server box. Over the past year I’ve grown quite tired of this bunch-o-externals situation and I decided that it was time for a NAS device to join the network in order to provide efficiency as well as a piece of mind against drive failures. I have looked at various devices from Netgear, Qnap, Promise and Thecus for an all-in-one solution, but after seeing the prices as well as the downsides; the tinkeringwithin swayed me in the way of DIY as it always does. :)

I had a whole lot of components lying around  from previous endeavours that I wanted to use. Hence, much of the stuff listed below were not purchased new. The reason I decided to use unRAID instead of other solutions is easy. Actually the FAQ section in the unRAID wiki lays it down. My favorites are bold:

No striping, so safer for multiple drive failures; parity protection, so resistant to single drive failure; flexible, can mix and match drive brands, sizes, and types, easily add additional drives, etc…

Each drive is an independent file system. An unRAID array can be thought of as a parity protected JBOD. If the array fails, the individual drives are still accessible, unlike traditional RAID arrays. Spin down can be controlled per drive, so a drive with rarely accessed files may stay off (spun down) for months, saving power costs, and possibly increasing its life. With standard striped RAID arrays, the entire array must be spun up or down, so generally stays spun up.

The server is now built and functioning gloriously with a total of 6.75 TB of space. It is connected to my APC UPS via apscupsd and it cleanly shuts down in the case of a power outage. All of the hardware and software components are listed below:

unRAID OS: 5.0-beta6a
MOBO: ECS A780GM-A (V1.1)
CPU: AMD Athlon 64 X2 Dual 5000+ 2.6GHz ADO5000DOBOX
CPU Cooler: XIGMATEK HDT-D1284
RAM: 2X KINGSTON 1GB 800MHZ DDR2 CL6 MEMORY KVR800D2N6/1G
Case: Dark Arena 4 HotSwap
Power Supply: Seasonic S12II 80+ Plus Bronze 520W
UPS: APC BE700GR Back-UPS ES 700VA
Expansion Card: Digitus PCI-X DS-30103 (JMicron 363)
OS USB Flash Drive: SanDisk Cruzer 4GB

Parity Drive: Seagate ST2000DL003 2TB
Data Drive 1: Western Digital WD10EACS 1TB
Data Drive 2: Seagate ST31500341AS 1.5TB
Data Drive 3: Seagate ST31500341AS 1.5TB
Data Drive 4: Seagate ST2000DL003 2TB
Data Drive 5: Seagate ST3750330AS 750GB

Installed packages: preclear_disk.sh, unMenu, apcupsd, bwm-ng, DS_Store and ._ file cleanup script, unMENU Image Server, iStat, mail and ssmpt, unRAID Status Alert, Monthly Parity Check, pci utils, Clean Powerdown, screen, WebGUI and Simple Features, infozip

Since I use my server in an OS X/AFP only environment I did not want the SMB shares broadcasted. The SMB shares are broadcasted via avahi even if the SMB service is turned off. To accomplish this I added the bit below to my /boot/config/go file as per this thread on the unRAID forums

 #disable avahi smb broadcast
avahi-daemon -k
rm /etc/avahi/services/samba.service
avahi-daemon -D

On my Plex media server box, the shares are mounted using autofs that is built into Mac OS X. There are other ways of auto mounting the shares suchs as adding the share to the Login Items or using third party applications such as Mountwatcher, but using autofs gives me transparent re-mounting of interrupted shares at the system level. There is a cool tutorial by Poldi on the Plex Forums if you are looking to implement it.

UPDATE – July 14, 2011: Upgraded to 5.0-beta9 from beta6 and in order to disable the SMB shares on this version, you need to make a change to the go file:

#disable avahi smb broadcast
avahi-daemon -k
rm /etc/avahi/services/smb.service
avahi-daemon -D

The file that the /boot/config/go file is removing at boot used to be called samba.service. Now that the netatalk subsystem is upgraded from version 2.0.5 to 2.1.5 in this new beta9; it is now called smb.service.

Posted By Muzo B

Leave a Reply