Build Log: Wizard's Sleeve (FreeNAS ITX Project) :D

Soldato
Joined
1 Oct 2006
Posts
14,331
"Small yet deceptively spacious" :D

Following on from a thread here about NAS options, I've decided to build myself a FreeNAS box as there isn't a NAS appliance out there that'll meet my needs.

Most of the boxes out there are either too simple, slow or too buggy and have lame vendor support for fixing the issues. The Buffalo Linkstation Live V3 was looking like the winner, until I read there were multiple issues with the Bittorrent client... that and it was missing a major piece of functionality I needed.

Buffalo's Linkstation on paper is excellent, however I think it's let down by shady software. Thecus's offerings look excellent in the all departments, however they're ridiculously expensive (£350+) once populated with decent size drives. Finally Qnap's options look good, but again their cheapest solution without drive is £180~, stick a 1TB drive in there and you're up to £250 for an appliance box.

Anyway, back to what the box needs to do:

  • Serve out a NAS share for media and backups over a LAN for 2 laptops, PC, 360 and an iPhone.
  • Act as a downloader for HTTP/FTP/Bittorrents.
  • Be secure yet accessible as it's going to be Internet facing for access to the download manager.
  • Be configurable as a web proxy server (how many NAS appliances can do this... yup, none!) as I have a mate in Spain who wants to be able to use the iPlayer and 4OD.
  • Small and quiet as per a dedicated NAS device as it's going to be in the lounge.
  • Low power usage.
Most appliances would have sufficed if it wasn't going to be used as a proxy, as the vast majority are cross platform and UPnP aware but hey where's the fun in an out-of-the-box solution? :D

So on to the fun stuff, hardware. Originally I'd been working to the budget of the Linkstation Live - £170. Despite doing much searching around, this is a bit tight but as I figured I'd be getting all the functionality I wanted and it fitted the brief I'd stretch a bit more and go for a mini-ITX setup.


  • Noah Mini-ITX case. I'm a sucker for brushed aluminium fronts, and as it's going next to an Antec Fusion HTPC case I figured it needed to look the part. Bonus with this case is it comes with an 80W PSU unit too.
procase-noah-3988-2.jpg



  • Intel BOXD945GCLF Atom mobo with 1.6ghz CPU. Can't fault this board for the price, £60 delivered is a stonking deal. It's got 2 SATA ports which is more than enough for the above case, and an additional PCI slot should I want to expand the SATA drives at a later date. It's also got an IDE port... which I'll explain why is good in a moment.
d945gclf_pic1_big.jpg



  • Samsung Spinpoint F1 Eco - 1TB HDD. Admittedly I haven't done quite as much research into this as I should have, but having had Sammy disks in the past and knowing they're quiet I'm confident this one will be up to the task. As the LAN is the bottle neck here, I'm not fussed about the fastest performance...

  • 1GB generic DDR2-667 RAM. FreeNAS recommends a minimum of 128MB, 512MB if using RAID setups. The 1GB is overkill, but given it's only a tenner it's a bit of a no brainer.

  • 256MB IDE Flash Module. From what I've read FreeNAS recommends your OS install is completely seperate to your share drive, and in fact is designed to run from a LiveCD or a USB/Flash module. Always quite liked the idea of these modules, so perfect opportunity to give one a go.
dom32.jpg


Fingers crossed everything turns up tomorrow for a build over the weekend, will update the thread with more when it's here.

Any comments/suggestions? Experiences with FreeNAS customisation, or addition of modules and addons would be greatly appreciated.

Cheers :)
 
Nice one, I had originally tried to get FreeNAS working on my Atom system but I could never figure out how to get it on a flash pen :(

The guide here seems fairly straight forward, but you never know with this things until you try them. I'm not expecting my installation to be completely trouble free!

pennywise said:
Oh, and let me know how you get on with that IDE flash module, I'd be interested to see how well it works.

I'm hoping it's just going to show up in the installer as a standard HDD, so I just hit "Full Install to HDD" and it goes off and does the rest. Looks kinda cool though. At 256mb it's not much use for anything else bar FreeNAS or Damn Small Linux but hey.

Ive setup a freenas box before, at first it might seem really complicated to configure, but i went on the basis of if you dont know what it does leave it haha
i managed to add a drive and partition it, and enable the windows networking plugin thingy
not too difficult, good luck anyway!

General rule of thumb with UNIX isn't it? :)


The only thing I've got any concern about it is getting the onboard LAN working, at worst it looks like I might have to compile a driver to work on BSD but nothing major - he says...
 
Toys arrived on Friday! :D Seriously impressed with the size of the mini-itx case and board:

DSCF5142800x600.jpg


The IDE Flash adapter:

DSCF5143800x600.jpg


Another mid build:

DSCF5145800x600.jpg


The hardware build was silky smooth, the Noah case is a breeze to work with and save for the badly placed DC input on the back I'd say it's a nigh on perfect choice for a single drive mini-itx NAS setup.

The board itself is great, everything is in a logical place and offers the perfect amount of connections for this setup. 1 x IDE for the flash adapter, 1 x SATA for the HDD and 1 x SATA for the DVD drive for installation (machine runs without, only used for install. The only thing I can fault the board (and ultimately Intel!) is the ridiculous choice of heatsink and fan on the chipset. The CPU itself is so low powered it runs passively on the tiny low profile heatsink, but the 945/GMA950 chipset needs a bit more cooling... why they decided to do that cooling with a 40mm screamer I'll never know! The BIOS lets you drop fan speed to 50%, but it's still audible. It's been disconnected for now, and the box is silent. Temps inside the case are reasonable and the 80mm Evercool fan on the case seems to be coping nicely.

And finished, up and running with FreeNAS 0.7 installed:

DSCF5147800x600.jpg


status.jpg


Configuration via FreeNAS's web interface is intuitive and easy to follow, getting a drive formatted, mounted, shared into 4 SMB/CIFS shares and secured with users took about 10 minutes. Enabling FreeNAS's SMART HDD management, power management, email alerts and kernel tuning took about an hour or so after that. Not time consuming at all.

The Transmission Bittorrent client is fairly simple and not massively configurable, but you can set global upload/download and a couple of other critical options from the GUI. Transmission also allows for a config file which I presume allows you more control over it's functions, not looked into that as yet though. I do like the way it'll constantly scan a folder for fresh torrents and automatically download them to a folder. Coupling that with an SMB/CIFS share and a mapped network drive makes setting up and downloading a breeze. :)

bt.jpg


Finally, the last thing I needed the box to do was to act as a web proxy for some people I know overseas who need to access the iPlayer and other location specific services for UK only folk. Installation again was a cinch, ssh in to the box, su and type:

Code:
pkg_add -r tinyproxy

putty.jpg


Bang, done! Needed to change a couple of values in the tinyproxy.conf for interface, allowed hosts etc.. but thats yer lot.

Performance wise the little Atom CPU copes with everything I've thrown at it, it's been proxying and serving out Divx whilst syncing folders from two sources - if anything the LAN is the bottle neck. In time I'll upgrade my local LAN to Gb, but it's fine for what I'm using it for at the moment. :D
 
I don't think that case take anymore than one 3.5" drive, but I know for a fact the InWin cases take two 3.5" drives, a 2.5" drive and a slimline optical drive, possibly with room for modding a bigger HDD rack into it somewhere. My ultimate plan ;)

sweet is it possible to put 2x 3.5 drives in there? 1TB is too small for me. 2x 1.5TB would work better. Or maybe one of the new 2TB drives.

The case will only fit 1 3.5" drive slung under the mount at the back, you could fit another 2.5" where the CD drive is supposed to go though...

RJC said:
Nice setup :)

Awesome looking setup anyway randal, I still need to find a case fan that's close to silent so I can keep my server running 24/7 downloading and actually being useful :o

Cheers for the positive comments fellas. :)

Fan wise, that Evercool is more than quiet enough but if be aware if you were to swap the fan out for something else say a Sharkoon you might have to mod the bracket to fit it in there. The 80mm Evercool fan is about 3/4 the width of a normal off the shelf fans.

vidda said:
I couldn't find it on the freenas.org website - but does freenas support LVMs? I'd find that pretty useful.

FreeNAS 0.7 uses ZFS to combine multiple partitions into one volume, not using it myself but there's a load of info out there. :)
 
Really nice write up. Im think I might give this ago, do you think it could stream HD video to the PS3 ok?

Don't think you'd have any problem keeping up with that throughput with this setup. I might do some testing later on if I get some time.

Are you talking BR rips, HDTV downloads etc..?
 
How much this cost you total?

Intel D945GCLF 1.6GHz Atom Mini-ITX Board Retail Box - £56.35
Silver Noah 3988 Mini-ITX Case & PCI Riser & SATA Power Cable - £67.85
256MB Disk On Module - 40 pin IDE (SMI) - £21.80
1TB Samsung EcoGreen F1 HDD - £58.89
1GB DDR2 PC2-5300 - £8.99
Delivery - £9.20
FreeNAS - Free :D

Total: £223.08

Needed a blank CD, and a CD drive to do the installation onto the HDD flash module. Oh and a KVM obviously to get it setup and on the network.

Obviously can't tell you where I got it from as it breaks the competitor rule, but it's not too hard to find those parts for those prices with a little Google-age.
 
The PSU is passive, external laptop-esque power brick and a PCB about the size of ten smokes. :) Silent. The fan on the chipset however... wweeeeeeeeeeeeeeeeeeeeee. Disconnected... problemo solved.
 
Hi. Great thread/idea. I was looking for a replacement for my ageing ATX Windows server, and this inspired me. I decided to build an almost identical system, only I went for the dual-core intel atom board. Very pleased with the Noah mini-itx case (I went for the black version). FreeNAS is a great piece of software, but I was initially disappointed about the lack of a usenet client built into it (despite it having bittorrent). I've got the OpenBSD port of SABnzbd+ installed and running on it now though which solves that problem. :)

Hey hey, sounds good. How are you finding the dual core atom with FreeNAS? Any problems? I doubt you'll get any with performance, the single core version I've got heardly breaks a sweat with day-to-day file serving and proxying.

Also that's one of the main reasons I opted for FreeNAS - the simplicity of adding packages with the added security of BSD was enough to win me over. Sure Windows software is easy to install, but having everything presented in a web page or on a command line is much nicer and better for my needs. Setting up torrents with an iPhone remotely etc.. Or logging in via SSH to start stuff up/shut stuff down. Again, do-able over the iPhone whereas a Windows setup would take a lot more jiggering or need VNC/TS running.

Why use FreeNAS tho? Why not just bung Windows or even Ubuntu on. I use my EeeBox as a NAS in effect but it has XP on it...

1) It's free.
2) I prefer having BSD to Windows on a box that's facing the Internet.
3) It's extremely configurable, modular, and has an active community for assistance and packages.
4) It's lightweight and runs very well on lower powered hardware.
5) Small installation footprint.
6) Did I mention it was free? :D

Got this case and the D945GCLF2 board. However, the board has a 24 pin socket and the one that comes with the noah case only has a 20 to 20 pin cable. Will it work with the 20 pin one or do I have to get a 20 to 24 pin cable?

It should work with the 20pin adapter, I ran an old AMD X2 setup with a 24pin mobo connector with a 20pin PSU for months with no worries.
 
How do you do the HTTP downloads on FreeNas? You mentioned that was one of the things you wanted it todo... I cannot for the life of me figure out how :)

Not as graceful as the web GUI for Transmission or shares, but wget suits me for what I need it for. :)

Code:
chunky:~# pkg_add -r wget
Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-7.2-release/Latest/wget.tbz... Done.
Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-7.2-release/All/libiconv-1.11_1.tbz... Done.
Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-7.2-release/All/gettext-0.17_1.tbz... Done.
chunky:~# wget
wget: missing URL
Usage: wget [OPTION]... [URL]...

Try `wget --help' for more options.
chunky:~#
 
It's more than enough, and definitely overkill for basic file sharing like you said. The only time I see any benefit of the extra core is during PAR2 repair on incomplete usenet downloads, as that's the only job this box does that's limited by CPU rather than network/disk I/O.

Ah cool. I can't really think of anything that's going to stress it out, short of zipping on the command line. Everything else is major low CPU usage territory. Unsurprising that the FreeNAS devs say a P2 is more than enough to run it!

Are you running yours at 100mb? I'm seriously tempted to upgrade my home network to gb/wireless n now I'm using a wireless laptop instead of a cabled desktop.

I'm a total noob to FreeBSD, but it's very similar to Linux (including the package management) so didn't take me long to feel at home with it. I'm really impressed with SABnzbd+ too. As a longtime Newsbin (Win32) user, I was concerned that I would find it lacking in some way, but as it turns out, it meets my needs perfectly.

I'll have to look into SSH via iphone. Only ever used VNC/RDP via my iphone in the past. What SSH client are you using?

There's not a huge amount in it, although BSD purists will strongly distance themselves from any form of linux! It's x86 UNIX dammit! :D I'm gonna have to give newsgroups a good going over, I had a look at it a couple of years back but I couldn't decide who to subscribe to or what client to use etc.. It was all a bit of a minefield. Any recommendations?

RE: the SSH/iPhone, I just installed the OpenSSH bundle from Cydia and the Terminal App. Once it's jailbroken of course. :)
 
Thanks for that, I may install FreeNAS on mine. But do you know if it can read from a "links" file stored on one of the shares?

I have used wget on windows with batch scripts to launch downloads and read links from a text file im not sure how one would do that - through putty i assume?

I'd just do something quick and dirty like:

Code:
#!/bin/ksh
while read downloadlink 
do 

/path/to/wget $downloadlink <yourdestinationfolder>

# Little bit of error checking, if all downloads fine then remove d/l link from file.  
#Else log an error to a file and sleep.  This will loop so long as there's something in the file. 
if [[ $? = 0 ]] 
then
cat /path/to/your/downloadlinksfile | grep -v $downloadlink > /tmp/woo 
mv /tmp/woo /path/to/your/downloadlinksfile
sleep 30 #or however long 
else 
echo $downloadlink >> /foo/logfile
echo "file didn't download properly yo" >> /foo/logfile
echo "" >> /foo/logfile

fi 

done < /path/to/your/downloadlinksfile
*not guaranteed to work first time :D


Look at astraweb for usenet downloads as its the cheapest around with good retention and ssl.

Cheers matey, I'll give it a looking over.
 
You can fit one 3.5" HDD in the mount where I've got mine, and you can fit a 2.5" HDD in where the optical drive would go. It's really a 1 HDD system though, definitely 1 HDD if you plan on having an optical drive in there permanently.
 
They've only just become available, I'm not a fan of the plastic case, and mine as 1TB of storage. Well 1.16TB now I've added a 2.5" drive to dual boot into XP for using it as an HTPC as well :)
 
Nice one, I had originally tried to get FreeNAS working on my Atom system but I could never figure out how to get it on a flash pen :(

Bit of a thread revival, but I've just sussed this out so thought I'd share. The problem is the FreeNAS installer mounts the USB drive at startup as a read only mount point. This is because the boot up sequence detects the volume as space to dump a config directory as it thinks you're running a Live environment off the CD.

Solution: Insert the USB drive after the machine has booted off the CD. Annoyingly simple, yet that's all you need to do. :)

Shameless plug as well, the guts of this project are up in the MM here. Moving to a C2D Celeron board for a bit more oomph. Project updates to follow...
 
Back
Top Bottom