I included a TL;DR section at the end.
(note, the prices include sales tax and shipping, if any. I have to pay sales tax on both Amazon and New Egg. Most of the products had free shipping or Amazon Prime shipping.)
This project evolved a bit since I first decided to do it. I initially thought about setting up a single board computer with one hard drive as a network attached storage device. Many single board computers don't have SATA or PCIe capabilities, so interfacing with a HDD would require some type of SATA to USB adaptor, external enclosure, etc. Odroid makes a board that does have SATA, but only for one drive unless you buy the “CloudShell2” RAID hardware accessory, but even that runs through USB and is still a bit limited compared to a larger device. (Would be fun to mess with it though.) There may be a few more options, but I am pretty much a beginner when it comes to non-Windows systems so I would prefer to stick to a solution that has a fairly big community for support and documentation.
Next I thought about just buying a multi-drive NAS unit, such as Synology or Drobo. I didn't do a whole lot of research about these, but I was a little nervous about having a proprietary hardware/software RAID, and buying one might take the fun away from building something of my own. The price of some of the more common units ranges from $300-$500, plus you still have to buy the hard drives to go in them. Doing the math, I figured I could build my own system for the same price, and I would have more control over certain features that might allow the system to serve other purposes as well.
I had recently watched some videos on YouTube about an operating system/software called Open Media Vault. At its basic core this software does one main thing: it manages storage volumes and controls access to that storage over a network (i.e. network attached storage). The OMV installation creates a headless Debian Linux OS installation, and the OMV software is accessed from another computer on the network via a web page interface when going to the server's IP address in a web browser. The hardware requirements for this software when used for the basic functions of file serving are really minimal so I knew I could keep costs down by buying fewer CPU cores and a small amount of RAM. However, I still wanted to shop for current-generation hardware which will keep future upgradability viable longer and possibly have a larger pool of in-stock hardware options, not to mention making the project more fun for me.
I ended up going with a Celeron processor. My photo editing and gaming build has an i7, so buying a Celeron felt strange, but for serving files this should be plenty and it only cost $42. Thanks to PC Part Picker’s price comparison tool, I found this at B&H Photo with free shipping and no sales tax. I didn’t even know B&H sold computer hardware.
Next I needed a 300-series chipset motherboard to go with this current-gen CPU. Since this build is focusing around storage, I specifically looked for a board with a lot of SATA ports, and there were many options that had 6 of them. I don’t plan on using that many any time soon, but it’s nice to know they are there. Since I won’t need a ton of RAM, I included boards with 2 RAM slots in my search options. I have no plans to overclock, so I’m not looking for a specific chipset that can do that.
When searching for boards that meet the above criteria, I sorted by “lowest price” and then excluded some brands that I wasn’t familiar with and some boards that seemed to get really bad reviews. One of the best boards for the price that I found was this MSI B360M “Gaming Plus” board. I laughed at first because I have zero intentions of using this for gaming, and the color theme is red, which I wasn't a big fan of at first (though it looks MUCH BETTER in person than I thought it would); however, the specifications and price were exactly what I wanted. After a NewEgg promo code and a mail in rebate, I saved $20 bringing it down to a little over $50 (plus sales tax adding on about $4, but I was very happy to get a board with everything I wanted for ~$56.)
One thing I am not crazy about with this board is that is has an embedded strip of LEDs in it. Apparently there is no setting in the BIOS to turn this off. It can be turned off with some MSI software in Windows, but I am not running Windows. This computer will be in my bedroom and will be turned on most of the time, and I hate having bright lights on when I’m trying to sleep. However, I got accidentally lucky in that the LEDs on this board are red, the color which bothers me the least at night (compared to white or blue or green lights), and they really aren’t as bright as I thought they might be. The first night with it running I didn’t even notice it. It's actually quite nice looking. I’m really glad I didn’t get a similar board with white LEDs though, which would look awesome, but would probably be more annoying at night.
This board also has an M.2 slot. I don’t NEED an M.2 slot, but this is a new technology to me and I have been very fascinated by it, especially the NVMe SSD options. I am very happy to have the opportunity to explore it a little.
Corsaire Vengence DDR4-2400. I don’t need much RAM for this system. I’m not even sure if you can buy DDR4 in less than 4GB (I didn’t see any 2x2GB kits), but one 4GB stick will be plenty for my needs. RAM isn’t cheap right now, but only buying 4GB helped keep the overall build cost down for now. The listed speed of this RAM is compatible out of the box with my board and CPU, and the timing/CAS latency on this RAM is pretty low compared to other options in this configuration. So far I have never seen my system’s RAM usage go over about 20%.
As I said above, I don’t NEED an M.2 slot, but since I have one…. I was really excited to try out an NVMe SSD. I may not get the most out of it, but I was happy to find one for around $60. The 128GB Intel 760p. This is an NVMe drive that runs over PCIe x4 M.2 interface. I’m using this as my system drive. This thing gave me absolutely zero problems. BIOS detected the drive correctly, and as far as I can tell my OS has no issues with it. By having this as a system drive, I still have 6 SATA ports free to use for actual storage.
Western Digital Red HDDs. WD’s Red series is designed for use in NAS system. I don’t fully know all the features they have, but they are built to better handle being powered on for long periods of time. The non-pro versions spin at 5400rpm, and have a 3-year warranty (versus 5 year for the 7200rpm pro drives, which cost twice as much). I initially bought two of these 4TB drives and set up a RAID-1 configuration. Open Media Vault has a RAID section in the GUI that makes setting up RAID very easy. The underlying software that it uses is Mdadm which is a very common Linux RAID management software. I have never messed with RAID before so this is an experimental opportunity for me. So far so good.
Just a few days ago I added a third 4TB WD Red drive to the system (not pictured). I did not incorporate this third drive in to the RAID, but just have it as a seperate drive at this time. I am using this drive to store music on while the other storage in the system will be used for other backup purposes. I have hundreds of CDs and I’m ripping them to FLAC files. For backup copies of the music I have a 4TB WD Blue drive that I have had for a year, and I’m just copying the FLAC files to the Blue drive in addition to saving them on the NAS server.
I actually didn’t need to buy a PSU because I have an extra one from when I upgraded another build recently, but the extra one is sorta mediocre quality and I wanted to get a nicer one for this build. I have never tried Seasoic before, but have heard good things. The Focus Plus Gold is not their BEST model, but it’s generally regarded as very good as far as I can tell. 10 year warranty. 550W should be more than enough for a system with no GPU and a few hard drives.
Thermaltake Core V31. I wanted a case with various options for holding HDDs. There are a bunch of inexpensive cases that would function to hold my hardware, but I wanted a case that looks good too (sleek, but not flashy). I looked at a bunch of cases before deciding on the Thermaltake Core V31. It’s a pretty big case, but there are bigger cases out there. The price is right in the middle of the options I considered. In addition to the three actual HDD bays, there are other options for mounting more HDDs, such as adding them to the two 5.25” bays which I’m not using.
This is my first case with a side window. The opposite side panel is extended outward nearly half an inch(?) or so which helps with any bulky cables behind the motherboard. I thought having side mounted hard drives would be a good thing, but I’m finding that it’s actually a bit annoying to get the SATA and power cables managed well with this configuration, but I got it to work. It looks clean from the front, but it's a tight squeeze where the connectors are.
I had a couple fans left over from previous projects that I wanted to use. The Fractal Design Venturi HF-14 (140mm) and the Cougar CF-V12H (120mm). These are good quality fans and very quiet. I put the 140mm in the front and the 120mm in the back. The case came with a couple 120mm fans. I removed the one in the back, but I left the one in the front even though I don’t have it plugged in at this time. The orange Cougar fan looks pretty dumb next to the red and black motherboard, but I’m OK with that.
I have my power supply mounted with the fan facing inside the case. I did this because I have a dog with a lot of hair and I have a lot of dust, etc, the computer will probably bit sitting long-term on the floor (not sure yet), and it just seemed like a better idea to have the PSU flipped this way.
Side story: I had a little trouble ordering this case. I first ordered it from Amazon because I had a gift card and the price was good, but the package never shipped. I may be remembering wrong, but I feel like this may be the first time in 18+ years as an Amazon customer where they have failed to ship a product to me. I guess I have just had really good luck because these things do happen from time to time. Amazon gave me a full refund, but then the case was out of stock so I ordered it from New Egg.
There are many software plug-ins available for Open Media Vault that expand its function, and OMV also has a GUI for Docker which makes it pretty easy for a newbie like me to mess with some Docker applications. One plugin that really pushed me toward trying OMV is a backup software that I have used before called UrBackup. The UrBackup plugin installs the UrBackup Server software which can be accessed via web interface like most everything else on the system. The UrBackup server connects with client software installed on Windows machines to manage automatic file backups. (Backup client computers can also be Mac or Linux.)
As I explored further, watched videos on YouTube (“Techno Dad Life” channel is pretty helpful), etc. I later ended up trying out Plex Media Server, and also installed a little program called “Heimdall” which creates a webpage where you can add URLs for your favorite websites or to different web-based applications on the server. It’s nothing essential, but it’s just a fun fancy way to display a handful of URL bookmarks, especially nice so you don't have to remember all the port numbers of the web-based applications on the server. You can add an image to represent each link, and I went online and found .png logos of the links I was interested in (see photo).
I have tested Plex Media Server and it does a great job streaming my FLAC files to my Roku on my home theater system. The Roku and Roku Plex software was able to stream FLAC directly without having to have the server do any type of transcoding. This means that playing FLAC requires almost no system resources from the server. I haven’t messed with video too much, but I did a test and used Plex Server to stream a 1080p video to a 720p TV, and the server transcode the video in real time just fine. Doing a lot of video transcoding (simultaneous streams, 4K, etc.) might be asking quite a bit of the Celeron though, but doing single video streams might be OK. I don’t have any immediate plans to use Plex for video streaming (just music streaming), but if I ever decide to do more video-intensive stuff in the future I might need to consider getting a CPU with more cores (i5 or i7), which should be pretty easy to swap out.
Since OMV runs on Debian Linux and I'm not real good with Linux yet, I had to do a little research and learning about a few things. A friend of mine who does IT work has been kind and patient to help me with a few snags I had such as trying to figure out the path to mounted drives, etc., but I have had the system up and running for about a month now and everything seems to be going very well and I am very happy with the build.
I wanted to create a network attached storage file server to use for storing files as well as for storing automated backups of Windows computers on my home network. Linux based Open Media Vault software is designed for this (along with the UrBackup Server plugin), and this software has really simple hardware requirements. An Intel Celeron CPU is powerful enough for home network file serving, and 4GB of RAM is more than enough. I bought the MSI B360M “Gaming Plus” motherboard simply because the price was good and it has 6 SATA ports for adding storage drives. I wanted to try out NVMe SSD tech so I found an inexpensive Intel drive and am using it for my system drive. The storage drives are Western Digital Red drives which are designed for Network Attached Storage environments. The Seagate Focus Plus Gold PSU has a 10 year warranty and seems to be a well respected product. The Thermaltake Core V31 case is big and not super cheap, but it looks great and can hold several hard drives. I had some nice fans that I added to it instead of the stock fans. After playing around with the Open Media Vault software, I ended up trying out the Plex Media Server software on the system and it works great for streaming my FLAC music files to home theater. I added a third HDD (not pictured) that I’m using just for media. The CPU seems to be OK for simple single video streaming, but if I want to do a lot more video stuff later I’ll probably need to consider upgrading to an i5 or i7. I've had the system up and running for a month now and I'm very happy with it.