So in my homelab environment, I have a Minisforum server with an Intel N100, 16 GB DDR4, and a 512 GB SSD, which I’m upgrading to 1 TB and performing a full migration from Rocky Linux to TrueNAS, as mentioned in a previous article.
My biggest issue with this server was that with these specifications, especially with the N100 being an efficient chip with 0 power cores and all 4 cores being efficiency cores, some processes would often take up 100% system utilization and stomp other services out, which resulted in regular outages on some services and in a best-case scenario, lag.
The services hosted on this server were as follows:
- Music server for my personal music library
- Media server for some saved media that I like to watch
- NAS server using SAMBA for hosting private file storage over the LAN across my ecosystem
- VM jump server for experimenting with things in a containerized environment
All of which were mostly managed headless, using both SSH and a secure web management console interface.
So I went out to research some alternatives, to plan a system migration for my server. What I came across in this research was the Minisforum UM790 Pro. This mini-PC is about the size of a sandwich, and may be bought in a barebones configuration, which is exactly the one I went for. Being barebones, you’re getting a Ryzen 9 7940 HS with 8 cores and 16 threads (all 8 cores are performance cores), as well as a very capable AMD Radeon 780M. Since this computer shipped with no SSDs, no RAM modules, and no OS, the cost wasn’t much more than what the raw components were worth. Since I had a spare 16 GB RAM module from another machine I upgraded before, I only needed to purchase a 48 GB module and a 2 TB SSD to get this off the ground and running as a proper dedicated Linux server.
I installed the same headless tools used on my N100 powered server, and began migrating services. Now this server hosts the following:
- Two media servers (I’ll get into that more in a moment)
- Music server
- VM "farm" / sandbox playground where I can run multiple environments to experiment with and even have a secure administration console for some homelab tasks, that I can run from even my iPhone 12 Pro Max, which offers a secure way to manage things and learn new things, no matter what my actual physical location is
And yes, I have been known to configure some backend stuff as ideas pop into my head in a cafe or just on the daily commute, from an endpoint that has FDE baked in by default, that I can open up, start a process on, and terminate the session/lock the screen and continue going about my day while that operation runs headless in the background. If anything ever happens to the endpoint? I can securely wipe it if necessary, without any risk of losing data or interrupting processes on my actual server.
I found this Minisforum to be extremely satisfying to work on. You simply remove a few screws located under the feet, pop the top off, and either disconnect the fan cable, or just lean the bottom tray in a way that doesn’t strain the cable. Go in, add your SSD(s), RAM, remove the thermal pad covers, torque the screws back down, and fire it up.
Since migrating to this server, I’ve been extremely impressed with how many resource-intensive services it can run simultaneously. For my media server, however, one of the first things I noticed was that transcoding on Plex was a nightmare on my Radeon 780M. The process would just give up mid-stream, usually a couple minutes in, and the server would just cough up a vague error message. Notably, when direct-playing over LAN, this server performs perfectly. So I just needed a tailored solution to mobile streaming, where I do want to transcode a 1080P or 4K file down to 720P or even 480P, for those moments where I may have limited/spotty connection, but still want to enjoy some content from my server.
So I installed Jellyfin. Being powerful enough, there’s no issues running both Jellyfin and Plex simultaneously on this sandwich-sized box (which I still find hilarious that you can pack this much punch into something so tiny), alongside my VM farm and music server. Jellyfin works perfectly on this hardware for transcoding, and makes full use of that honestly pretty beefy Radeon 780M. It may not be an RTX card, or even a powerful dedicated AMD GPU, but for an iGPU? It’s getting pretty close to closing the gap on my old GTX 1060 that I used to use in my main gaming rig!
Now when I’m on the go? I just load up Jellyfin and I’m laughing. Streaming locally with maximum quality and directplay? Plex is still my guy on that front. And being that Plex is no longer required for remote streaming, it’s allowed me to lock that service down, further reducing my footprint and complying better with Cybersecurity best practices.