Here’s a picture of my server:
I currently use my home server for these tasks:
- Jellyfin to watch my movies
- Nextcloud as a replacement for Dropbox or Google Drive
- Photoprism as a replacement for iCloud Photos or Google Photos
- Gitea to host the code I write and don’t want to share with anyone
- Bitwarden as a password manager and trusted replacement for 1Password
I also self-host other applications in my home lab, just not on this home server, since I don’t run this particular machine 24/7. I have several Raspberry Pi for applications that should run 24/7 such as Pi-hole (for ad-blocking on the DNS level), Unbound (as a privacy-respecting alternative to the DNS server of my internet provider, Google, or Cloudflare), PiVPN (as a VPN server for connecting to my home network when I’m not at home), or Home Assistant (for home automation).
It all started with storing my Blu-ray rips and important personal data such as precious photographs on an external hard drive. But over time my hard drive became too small to store all my movies and I felt no longer comfortable with storing important data on a single disk. Why? Because in case that disk would fail—which all disks eventually will—, all my data would be lost. I wanted a solution that could grow with my increasing data needs and at the same time spare me from data loss in case of a disk failure. That’s how I arrived at getting a Synology DiskStation for my network-attached storage (NAS).
However, since a NAS is a computer in its own right and not just some type of external hard drive, and since it would have to run anyway whenever I wanted to watch a movie, I wondered why I would still need to hook my MacBook to my TV before I could watch a movie. Why would I need to run two computers (my NAS and my MacBook)? Couldn’t just one computer suffice (the NAS if it needs to run in any case)? After all, electrical devices consume power and power isn’t cheap, at least not in Germany where I live. The answer is Yes. One device—the NAS—can suffice. That’s where apps like Plex or Jellyfin come into play. In case you own a Synology DiskStation, I’ve written about how I used Docker to install the media server Plex on my Synology NAS.
Sadly, the CPU in most Synology devices isn’t really suitable for compute-intensive tasks such as transcoding videos. And if you want a Synology device with a more powerful CPU, it get’s disproportionately expensive very fast. You can get a much more powerful NAS at a much more affordable price if you build it yourself. The flipside is that you need to invest some time into learning how to do that. But since I’m a computer science graduate, that concern was no issue to me and actually something I was looking forward to rather than being repelled by it.
Once I had a self-built NAS / home server, I was no longer using it just for watching movies. I was also using it for more productive tasks and as a playground to explore more learning opportunities. I’m talking about replacing Google Drive with Nextcloud and learning Docker, to give some some examples.
A home server is a regular computer, just like your gaming PC or your MacBook. A computer consists not just of hardware, it uses software too. It needs an operating system. Instead of installing Windows on it to turn it into a gaming machine, we’re going to install Unraid on it which is an operating system much more suitable for a home server than Windows is.
Let’s begin by looking at which parts you need to buy and how much it would roughly cost you to build your own home server, provided that you have similar needs as I have and that you build a configuration similar to mine.
Buying the parts
As I already said, a home server is a regular computer, so you buy components for it just like you would if you were building a gaming PC. Basically, a home server is different from a regular PC only in that you install a different operating system on the hardware you bought. And it’s also different, of course, in that it’s intended for a different use case. It therefore is sensible to select the hardware components with the different use case in mind, paying attention to different characteristics than you would when buying the parts for a gaming PC. By that I mean that you don’t buy the most capable CPU you can afford (with the goal of being able to play video games in 4K) but rather that you
- optimize for power efficiency if the machine you’re going to build is going to run 24/7 and
- pay particular attention to how many disks your chosen case can house.
For me, it started with the case and the CPU because I already had particular models in mind regarding these two components whereas the question what other components I would buy was still unanswered.
My main requirements of my NAS were that it should be able to house a lot of hard drives—to me, “a lot” here means at least six—without it being too ungainly or taking up too much space in my living room, since I don’t have a dedicated server room. Therefore, it made sense to first decide on the case.
Since I had neither the money nor the space for a rack mount, I looked for a regular consumer-grade case.
I began my research with the Node 804 by Fractal Design in mind and looked for alternatives I liked better and that could house at least four HDDs, but I didn’t find any, so I bought the Node 804. Since the Node 804 is a case designed for the microATX form factor, all ATX-sized motherboards were off the table due to that decision, but more on that later.
The second thing regarding which I had already made up my mind was that I wanted an Intel CPU (due to its Quick Sync feature) of the Alder Lake generation. After all, the main reason why I had set out to build a home server was that I wanted to use it as a media server so that I could watch movies using Jellyfin. And for that purpose, AMD unfortunately cannot (yet) beat Intel’s Quick Sync feature, so therefore all CPUs made by AMD were off the table due to that decision. And for my purposes (and yours too, probably), the Alder Lake CPU that is best suited for a home server like mine is the Intel i3 12100.
Next was the mainboard. I needed a mainboard that supports the mentioned Intel i3 12100 CPU and—due to the mentioned case—has the microATX form factor. There aren’t a lot of such mainboards out there. I like to use the excellent (German) site Geizhals—literally meaning cheapskate—for such searches. I ruled out the more expensive mainboards with features targeted at gamers (which are unnecessary for the purposes of a home server) and those with integrated Wi-Fi which I don’t need, so my choice fell on the Gigabyte B660M DS3H.
I made good experiences with Gigabyte before, whereas other brands are known to coerce YouTubers when these YouTubers don’t review their products favorably. I don’t support such business practices and therefore refuse to buy products from such brands.
Since the mentioned Gigabyte mainboard requires DDR4 RAM—it doesn’t support DDR5 RAM which is still too expensive for me to consider it, anyway—, I decided on RAM next. I don’t need RAM with RGB-lighting targeted at gamers or RAM that you can overclock. In fact, I want exactly the opposite. Since my home server would be running for many hours on end, I want power-efficient components, not power-hungry components. I want stable components, not components that will cause crashes after some time of usage or corrupt parity bits due to bit flipping in the RAM.
Since the mentioned CPU Intel i3 12100 supports DDR4 RAM with a clock frequency of up to 3200 MHz, I was looking for exactly that: DDR4 RAM with a 3200 MHz frequency. You should generally go for the highest MHz number your CPU supports, but be aware that—at least when talking about DDR4 RAM, DDR5 RAM is a different matter—frequencies higher than 3200 MHz are marketing nonsense.
When searching for RAM, you often read of CL numbers. CL stands for CAS Latency (where CAS is short for Column Address Strobe, but you don’t need to know or remember that). In theory, the smaller this number the better, but in practice this matters not nearly enough to justify the price increments. The combination of the MHz number and the CL value tell you how responsive your RAM is. This is relevant mostly for in-memory tasks such as caching or running multiple virtual machines in parallel and can be relevant for gaming. Some games can profit from lower latencies, but not every game. My advice is to buy the RAM with the highest MHz number your CPU officially supports and then, within these options, go as low with the CL number as your budget allows.
The CL number is the first of the four values that make up the memory timing. Of these four values, the last three values are relevant only if you want to overclock your RAM, which is exactly the opposite of what you want for a home server. Therefore, I do not care about the last three of the four subtiming values.
What I do care for instead is the voltage at which the RAM runs. That is, does the RAM run at the standard 1.2 V or at a higher voltage (which would be a red flag to me)? By default, DDR4 runs at 1.2 V and the memory controller in your CPU expects your RAM to run at 1.2 V. Many brands, however, overvolt their products to be able to overclock them. (This is were those other three subtimings come into play.) Especially those brands targeting gamers. However, your CPU isn’t designed for running your RAM at more than 1.2 V. (As you might have noticed by now, I dislike “gaming” products, since there’s almost always something wrong with them.)
In my humble opinion, gamers pay far too much attention to the CL value and far too little attention, if any at all, to the voltage. Even when they mention the voltage, they almost always misunderstand it. Higher is not better regarding voltage.
Some background knowledge: The higher the frequency of the voltage, the higher the clock speed. That is, the higher the MHz number, the faster the RAM (at least up to a certain threshold). But the higher the frequency, the more unstable the frequency, and the harder it gets to stabilize your computer. If your computer is too unstable, it might not even boot or it will crash with a bluescreen relatively often. There are two tricks to bring back stability while maintaining the high clock speed gained by overclocking. One trick is to increase the CL number, or in other words, to increase the latency, thereby reducing the RAM’s responsiveness. This reduces the performance of the RAM somewhat. It’s like making two steps forward by increasing the clock speed only to make one step back again by reducing the responsiveness. Taking back some part of a promised gain in performance is not something that gamers want to hear. The other, therefore more common trick is to increase the voltage of the clock to numbers higher than 1.2 V. That way you can stabilize the high frequency and keep the latency low, for what it’s worth. But increasing the voltage is problematic. It can reduce the lifespan of your CPU and might even fry the CPU if the RAM runs at a voltage that is too high. It also makes the RAM consume more power. People who bought RAM that deviates from the JEDEC standard are certainly out there telling anecdotes about their computers more frequently crashing with bluescreens starting around two to five years after they built their computers. And anecdotes about these crashes stopping from happening as soon as they replaced their RAM.
Now back to which product I bought. There are only three manufacturers of RAM left:
- Micron which is the company behind the brand Crucial
- SK Hynix
Every other company/brand orders from them and adds their own overclocking or RGB lighting. I made good experiences with Crucial. With their Crucial brand, Micron is able to
- maintain a stable frequency at 3200 MHz,
- nonetheless keep the CL value at a very good 22 (which is precisely the CL value that RAM should have, as prescribed by the standard, in case it’s not—against all serious recommendations—overvolted)
- and all that without having to increase the voltage to a value higher than the standard 1.2 V.
Other brands very often resort to increasing the voltage which has the potential to damage your CPU just so that their marketing department can seduce you with higher MHz numbers and lower CL numbers. At least it increases your electricity bills. Some products by other brands than Crucial aren’t even able to achieve 3200 MHz without resorting to overvolting. We’re not even talking about overclocking here, with the goal of achieving frequencies higher than the standard 3200 MHz. We’re talking about reaching the frequency of 3200 MHz as defined in the standard without having to resort to increase the voltage. Without meaning to pick on any brands, the product Kingston Fury Beast as an example achieves only 2666 MHz of the advertised 3200 MHz when you don’t increase the voltage from 1.2 V to 1.35 V which you can optionally do by activating the Intel XMP setting in your mainboard’s BIOS. To be fair to Kingston and to show that I’m not picking on any one brand, their product ValueRAM (which is tellingly not advertised to gamers) seems to have the exact same specifications as the Crucial RAM that I bought.
Anyway, if you—like me—don’t want overclocked RAM, then the standard specifies three allowed combinations of memory subtimings for the desired frequency of 3200 MHz:
These combinations each represent the first three () of the four subtiming values, meaning the standard does not care about the fourth subtiming value (tRAS). In all my research, I couldn’t find any DDR4 RAM with 3200 MHz, 1.2 V and a 20-20-20 memory timing. I assume that it’s just that the manufacturing process for DDR4 RAM never caught up with the standard conceived years ago and now that DDR5 RAM is here, it probably never will. Therefore, I truly think that the Crucial RAM with the 22-22-22 memory timing that I bought is the best RAM you can buy if you’re looking for DDR4 RAM that is not overclocked. If you hear or read unqualified comments like “The 3200 MHz with CL16 is much better than the 3200 MHz with CL22 and is even more affordable” without even mentioning voltage, you can safely assume that this person is clueless and probably too gullible to be worth listening to.
Now that I had determined what I required of my RAM, the only thing left to decide was how many GB I wanted. I was choosing between 8, 16 and 32 GB. Unraid is very resourceful and even when running several Docker containers, 32 GB RAM are overkill. Even 16 GB RAM are probably overkill. My advice is to buy 32 GB only if you want to run virtual machines rather than Docker containers. I went for 16 GM RAM, in the form of two 8 GB sticks to make use of both memory channels (dual-channel setup). Also, you should always buy a kit rather than two individual sticks. Therefore, I bought the Crucial CT2K8G4DFRA32A.
My personal reason why I decided on Crucial and against the mentioned and seemingly technically identical Kingston ValueRAM was that I think that Kingston’s ValueRAM is not available as kit but only as individual sticks.
I did not want watercooling. Good fans work better than water cooling and are more quiet at that, too. There are multiple resources on, for example, YouTube that support this claim. Check out the YouTube channel Gamers Nexus if you want to dive into that topic.
The company Noctua has a very good reputation, so I followed my gut feeling and bought a Noctua fan without comparing it much with other companies. I mean, perfect is the enemy of good and my time is valuable too, so even if I could have saved $5 or $10 here or there, spending just one hour more on further research would have cost me more in terms of my aspirational hourly rate than it would have saved me.
I did, however, check—using the Noctua website—which of their fans fit the combination of my specific case, mainboard and RAM to ensure that I don’t buy components that won’t fit. Seeing that nearly all Noctua fans would work, I narrowed down which of their fans would be most appropriate for my Intel i3 12100 CPU.
I had the choice between regular coolers and low-profile coolers which are designed specifically for very small cases (that are even smaller than my Node 804) at the cost of being less efficient and louder. Examples for such low-profile coolers that would have worked for me are the Noctua NH-L9i-17xx or the more powerful NH-L9x65. Even more powerful and nonetheless more affordable is the Noctua NH-D9L and since the Node 804 can house that one, my choice fell on the Noctua NH-D9L. It even came with thermal paste. Just to double-check, or if you already have a fan in mind and want to do the lookup backwards starting from the fan, the Noctua NH-D9L really does work with all my other components.
For hard disks, it was pretty clear from the beginning that I would buy Toshiba drives, since the disks of Toshiba’s MG series are currently among the most well-regarded hard-disk drives on the market. Their ACAxxTE models are what you want (for example, the MG09ACA18TE) where the xx tells you the size in TB. The MG07, MG08, MG09, and so forth tells you the generation of the MG series.
Power supply unit
Lastly, I needed to decide for a power supply unit. Since I’m not using a graphics card and generally designed a power-efficient system, I don’t need a crazily overbuilt PSU. Quite the opposite. An overbuilt PSU would even be less energy efficient than a PSU geared to your actual power needs because it would operate with the load—the home server—being supplied with power at a suboptimal percentage of the PSU’s wattage. In order for the PSU to run as efficiently as it can, the load—your home server—should consume an amount of power that’s somewhere in the range between 40% and 80% of the PSU’s wattage.
For example, if you buy a PSU with a wattage of 450 W, then your server should consume at most 80% of 450 W (that is, 360 W). Actually, your server should consume even less because approximately 10% of the power supplied by the PSU is lost in the form of heat. Conversely, if you added the power consumption of all your components up to, say, 200 W, and factored in the mentioned 10% that are dissipated as heat, then you would need a PSU with a wattage somewhere between 200 W * 1.1 / 0.8 = 275 W and 200 W * 1.1 / 0.4 = 550 W.
Generally, you shouldn’t buy a PSU with a wattage less than 400 W even if you would theoretically only need one with 300 W or 350 W wattage. The reason is that such low-powered PSUs are usually of a much worse build quality and therefore—due to their inferior parts—less energy efficient in comparison with PSUs featuring a wattage of 400 W or more.
The PSU wattage required for your server depends on many factors, including how power-hungry your CPU is, whether you use a graphics card or not, and how many HDDs you plan to use. If you buy the same components I bought, then I would recommend the following:
- If you plan to use less than 6 disks, a 400 W PSU is more than enough and simultaneously the lowest wattage I would get.
- If you plan to use 6 to 8 disks, get a 450 W PSU.
- If you plan to use 9 disks, get a 550 W PSU.
Don’t quote me on this, but despite all the marketing talk about conversion loss and power efficiency I think that 2% more or less don’t warrant buying a new power supply unit if you already own one. If you already have a 400 W PSU left over from a previous PC build—even if that PSU is a couple of years old—, then I would just use that one rather than buying a new 400 W PSU solely because the functioning one you already have is a couple of years old.
To be honest, the power supply unit is the component I researched the least. Or rather, the different brands of PSU’s are what I didn’t research as well as I could have. What I did research, as you can tell, is the offering of the brand I chose and of course the device I eventually bought. Personally, I decided on a power supply unit by the brand be quiet! for no particular reason. Or maybe for the reason that it’s a German brand and that I’m German, and that the brand gets recommended quite often here in Germany where I live. That shouldn’t mean that you should choose that brand too. I myself decided on the Pure Power 11 with 400 W by be quiet! simply because it seemed to be the device most appropriate for the combination of my needs and my budget, and—perhaps more importantly—because I happened to have one left over from a previous build. Why buy an additional PSU when you have a spare one that you can put to good use again? With PSUs, I try to reuse those I already have, even if they’re already a few years old, since manufacturing PSUs puts quite a strain on our planet and, as I already mentioned, despite all the talk about Gold and Bronze ratings—the efficiency-certification program used for marketing—, we’re talking about differences in power efficiency in the range of 1–3%. It would take me years to recoup the upfront cost of buying a new PSU through the power savings, which is why I’m happy with reusing the PSU I already have. You can identify that particular PSU I use by its article number BN292. In case you have trouble finding it online, it seems to have been entirely superseded by its successor, the Pure Power 12. I suppose you’ll either have to buy the 550 W model or decide on a different brand (for example, Corsair), since it seems that be quiet! currently does not offer PSUs with wattages below 550 W.
You’re also going to need some SATA cables to connect your disks to your mainboard, but I’m not going into details for such interchangeable components.
Also, since the operating system Unraid currently cannot be installed on a disk and currently requires to be run from a thumbdrive, you also need a thumbdrive. However, Unraid is so resourceful that really any old thumbdrive you have collecting dust in some drawer will suffice. Please don’t spend money on buying a fancy new thumbdrive. You don’t need to.
Unraid itself also costs money, but that money is well spent. The expectation nowadays that everything needs to be free, or even the rampant entitlement mentality, is unbearable. Do you work without expecting a salary in exchange? Apple’s macOS is also not free, even though it appears to be. It’s price is just hidden in the hardware price. But I digress. For most people, the Basic variant of Unraid at $59 suffices. The Basic variant allows you to use up to six disks. Once you need more than six disks, you can still upgrade. You don’t even need to wait for Black Friday with your purchase because only upgrades from Basic to Plus or Pro are discounted but not Unraid Basic itself.
Assembling the parts
I’m going to leave you to your own devices here. If you’ve ever built a PC before, then you know how to do this. If not, there are numerous videos of people assembling PC parts available on YouTube.
Again, there are numerous videos available on YouTube on how to install Unraid. The video format is a better format for showing you that procedure than a blog post, I think.
Installing useful applications
Let’s remind ourselves why we set out to build a home server to begin with.
- We wanted to be able to watch movies on our TVs or phones—to build our own Netflix if you will.
- We wanted to replace commercial storage providers such as Google Drive (that share your most intimate data with who knows whom) with a trustworthy open-source solution such as Nextcloud running on our own hardware under our own control.
- Maybe we want to host our own GitHub because similar to how we might not want to share our private photos with Google, we don’t want to share the code of our cool new app idea with GitHub (which belongs to Microsoft).
- Maybe we just want to learn and practise how to use Docker.
There are many use cases for a home server. And for many of these use cases, there are already excellent guides on YouTube. You can start with this video on Wolfgang’s channel:
I showed you neither how to assemble the parts nor how to install Unraid. One could ask then what the purpose of this article was. I think that now that I planted a seedling of building your own home server in your mind, and with you now having the knowledge of what Unraid is and how it fits with the rest of the concepts, you are well positioned to continue your research without me.
I think the most problematic part in building a home server is answering the question which parts exactly you should buy in the first place. There’s such a vast amount of components on offer that it can be difficult to settle on any one component. Due to analysis paralysis it can happen all too easily to never get started with the project of building a home server in the first place. With this article I helped you decide which components are a good choice. Once you have a home server of your own to begin with, and once the figurative ball is rolling, it’s easy to learn one new concept after another with the help of the various sources available online. But if the ball never got rolling in the first place because you couldn’t decide on what components to buy, then none of the tutorials on how to install Unraid will help you.
I hope that my article was helpful to you. If so, consider the equivalent of buying me a drink—I particularly enjoy Jasmine tea these days—as a way to show your thanks for profiting off my extensive research. Or just leave a comment down below if you don’t feel like spending money. A comment is equally appreciated. In any case, be well.