Translated from Simplified Chinese by AI.Read the original
Maybe it's the influence of feeds and recommendation algorithms, but seeing other people play with NAS and All-in-One really made me itch, so I also put together a low-cost Home Server o( ̄▽ ̄)d
What platform to use?
This was probably the thing I agonized over most when building the machine. At first I considered these options:
-
E3 / E5 + X99 no-name board
A typical e-waste setup. The hardware is cheap enough, but the process node is relatively old, power consumption is high, and single-core performance isn't great.
-
EPYC + server motherboard
Some models are cheap e-waste, but the motherboards are expensive (when will someone make a no-name board 👊😭), and power consumption is high.
-
Modded mobile-platform 12th-gen i7 / i5
If I hadn't seen it on the Taobao homepage, I wouldn't have known such a thing existed...
The price is reasonable, and because it's a modded mobile platform, power consumption is relatively low. But apparently there are issues like heat buildup, and I was also worried about the stability of the mods. Also, big.LITTLE doesn't seem especially friendly to virtualization.
-
N100 Mini PC
This is a fairly common All-in-One solution. Power consumption is ideal, but performance is a bit worse. And because of the Mini PC case's capacity limits, future expansion is difficult.
-
12th-gen i3
I also saw this option online. The board + CPU combo is around 1,000 yuan, but the cost-performance is relatively low.
-
R5 5600 + B550
The board + CPU price is also around 1,000 yuan, but the cost-performance is better. The CPU score on PassMark is around 21,000. By comparison, the i3-12100F, whose board + CPU total is also around a thousand yuan, scores around 12,000.
This is also the option I ultimately chose (≧∇≦)ノ
Motherboard
For the motherboard, I chose the MSI B550M PRO-VDH with the B550 chipset. I didn't choose B450 mainly because I was craving PCIe 4.0.
As for Linux compatibility, so far, apart from the sensor reading issue (which can be solved by installing a Kernel Module), I haven't found any other problems. Also, this motherboard supports configuring headless mode boot, so there's no need to install a graphics card or pay extra for the R5 5600G, which has integrated graphics but lower performance.
Case
To prepare for possible future RAID 5 needs, my ideal case should have at least three drive bays (I may not populate them, but the case can't lack them 233333). Dedicated NAS cases are indeed compact and refined, with enough reserved bays, but they're also indeed pretty expensive.
Ordinary M-ATX cases usually only have 1-2 3.5-inch HDD bays. But if choosing an E-ATX case with drive cages, you can stuff in many drives; however, after measuring, I found that a case that's too large would look particularly out of place next to the TV cabinet, so this option was also PASSed.
No way around it. In the end, after searching all over Taobao, I found that the SAMA Quzao I'M met my requirements. With an M-ATX motherboard and SFX power supply installed, this case can support at least 3 3.5-inch HDDs (two on the bottom cooling fan bracket, one on the SFX power supply bracket). After it arrived and I read the manual, I found the fan positions can be replaced with drive positions, so ideally it should support up to 5 3.5-inch HDDs (if the top cooling fan bracket can fit one; I haven't tried).
I got this case for under 200, the white one is a bit more expensive, so it's pretty good value for money. It's boxy and looks okay off to the side~
What's running on it?
-
Installed Proxmox VE as the VM host
-
Two LXCs running frpc and Tailscale respectively, for NAT traversal
Set up a firewall on PVE to prevent unauthorized access.
-
OpenWrt, configured as a bypass gateway for getting around the GFW
The main router is still a dedicated hardware router. I disabled DHCP on OpenWrt, and manually changing the gateway on a device is enough to get around the GFW.
-
Two Minecraft servers (Debian 12), one vanilla and one modpack
The official Realms server is laggy (200 ms), expensive, and doesn't allow plugins. After moving to the Home Server, access via NAT traversal gives latency of about 100 ms, saving a solid 60 a month, enough to pay back the electricity bill.
-
Black Synology, booted with Arc Loader
Mainly I was drawn to Synology's Photos app for backing up photos. After patching, face classification works.
It also met my father's requirements: I downloaded some American TV shows and movies and shared them over Samba for the TV to play. Since I don't have hoarding syndrome, I basically delete after watching, and the TV's performance is enough for decoding, so I didn't install platforms like Plex or Jellyfin.
-
My dev machine, running Debian Testing
Because the dorm only has a 50 Mbps tiny pipe, and switching toolchains back and forth is annoying, I spun up a VM and use VS Code for remote development.
-
A VM called
playground(Debian 12), where I plan to gradually migrate services running in the cloud back to local, saving another chunk of cloud server expenses 233333Barring surprises, I'll be running these here in the future:
- Traefik, reverse proxy gateway
- Cloudreve, can't waste the free object storage quota Tencent Cloud gives me every month ♪(^∇^*)
- LibreChat, paired with OpenRouter, my daily budget ChatGPT
- NyaaHub, a program I wrote before that can grab the seasonal anime I want to watch and upload it to OneDrive
- Wakapi, self-hosted WakaTime for tracking coding time
Finally
This is the story of how I built my Home Server. At the moment there's one issue: no GPU means some apps can't use hardware acceleration. If I really need it in the future, I'll add a modded 22GB RTX 2080 Ti, and maybe I can also run some local LLMs or AI art _(:3 」∠ )_
