The Main Question
I am looking into updating/upgrading my home media server using some old hardware from my main PC, and I would like some advice on Operating Systems. I have used Windows 10 for the life of this server, and I do not know if that would be the best choice for the future.
My main use case is a Plex Media Server with Remote Access and Hardware Acceleration, but I would also like to self-host a few items, including NextCloud and possibly Bitwarden. I have looked into TrueNAS CORE a bit, but I am uncertain how it would handle these Plex features. Regarding Remote Access, Plex says that it requires
64-bit Ubuntu (16.04 or later) or 64-bit Fedora (26 or later) distributions
and that
Compatible FreeBSD servers require Plex Media Server 1.13.9 or newer
Plex also says that other distributions may work with hardware acceleration, but they are not officially supported. They give a list of supported NAS devices, but they do not mention installing TrueNAS on your own hardware.
My experience with Linux kernel OS’s is relatively limited. I had to use Ubuntu for university, and I have used ZorinOS and Raspbian/Raspberry Pi OS at various points. I am familiar with the terminal, but I am by no means an expert.
A Few Lists
Why am I considering moving from Windows 10?
- Tired of unstoppable automatic updates causing unexpected downtime
- Interested in potentially less resource-hungry OS’s
- Would like to use an OS more suited for a home media server, if possible
What is my current hardware?
- HP Compaq Elite 8300 SFF
- CPU: Intel Core i5-3470
- RAM: 8 GB
- Storage: 500 GB OS Drive, 6 TB Seagate External (STKP6000400)
What is my planned hardware?
- Motherboard: MSI B250M PRO-VD Micro ATX
- CPU: Intel Pentium G4560
- RAM: 8 GB DDR4-2133 (only have 2 RAM slots)
- Storage: 500 GB OS Drive, 1 TB Internal, maybe the old 500 GB Internal, 6 TB Seagate External
- Still need a case and a power supply
- I will either purchase new ones for my main PC and use those for this, or I will purchase new ones for this purpose.
- As a note, my current main PC case can fit 3 internal hard drives.
A couple of random points
- The Pentium G4560 has a slightly lower benchmark than the i5-3470. However, it is 5 years newer. Both CPU’s support Intel Quick Sync Video. Would the newer G4560 still perform better for Plex despite having slightly lower benchmarks, or would it ultimately be a wash?
- I feel like using the 6 TB Seagate as an Internal drive would allow it access to a more reliable power supply and a faster data connection. Do any of you have experience shucking this model? Would it even be worth it, with the access to a USB 3.1 port that I would have with the planned hardware? A quick search tells me that it may be SMR, but I am already using it as my primary media drive so I am not certain if this would affect shucking any.
- I would very much like a more automated method of backing up specific folders on the 6 TB drive to either the internal drives or my two 2 TB Seagate external drives that I use for backups. On your suggested OS, do you have a preferred software/script for this?
keep in mind that if you want to transcode with Plex, you’ll need to subscribe to their Plex Pass… unlike Jellyfin which is completely free
deleted by creator
True, only software transcoding though. For hardware acceleration the Plex pass is required.
deleted by creator
I would recommend checking out Jellyfin (an open-source Plex alternative) to see if it meets your needs, as it’s actually free as opposed to Plex.
I would say that the Intel Core is probably a better choice, although both should be fairly close. Neither will likely be able to do real-time encoding of 4K video though, so you’ll need a GPU if you want to use hardware acceleration.
I heard good things about Intel quicksync with integrated gpu, at least with plex
Using it right now.
But it was a pain for my iGPU being an 11th gen (about ½ year old at the point of time) and also being an Intel Iris Xe and not HD graphics or UHD graphics
The thing with the Pentium is that it probably has a lower power consumption, that’s probably one of the reasons it was chosen
I tried Jellyfin for a few days now and have to say I was absolutely displeased by the stability of the clients (except browser) and sloweness.
Figured the bottleneck was somewhere else so decided to just try Emby with a 1-m pass. Emby works absolutely beautifully. No issues AT ALL regarding speed, transcoding, clients, or anything. I click the video a second later it’s up. Even through a VPN. Jellyfin frustrated me sometimes locally via LAN.
However I still want to give Jellyfin a shot. Have you experienced similar?
- both installed in docker on the same host with recommended but where applicable same config.
Interesting, I’ve had a pretty good experience with Jellyfin recently (it used to be pretty unstable but has gotten better with time). I mostly use the browser and Roku clients, and haven’t had any issues apart from a couple of movies that stuttered. I’ve used it over LAN, a VPN, and just straight port-forwarding. However, I am running it on my Windows gaming machine since my Linux box isn’t fast enough for 4K transcoding, so it could be that the Windows version is more stable for whatever reason.
Interesting… I used to use Jellyfin about a year ago until it suddenly stopped working. Now with new equipment and infrastructure I gave it another shot. I think I have to stick with Emby for now… Thanks for your view!
Any stable linux distro should be fine, as you have experience with Ubuntu I would go with that. There should be plenty of support out there if you run into any issues too.
I use Ubuntu Server LTS for my Jellyfin server. Haven’t had any issues with it, and it’s well-supported and easy to manage.
This is the way. I’ve used a lot of distros for Plex, but Ubuntu Server is always the simplest and most reliable.
I use Debian because it was the easiest to get Docker GPU pass through working on.
My best decision was Unraid. I highly recommend
Yeah I’m an unraid customer for over 10 years and couldn’t be happier
Openmediavault and then put Plex/jelly in a docker container.
As everyone seems to comment what they run without advisory:
Debian + OMV6 and jellyfin (+reverse proxy) in docker.Even though it takes a bit of learning, I would recommend just using a server Linux distro with docker. It does require a bit of learning, but it is well worth it. I would personally go with AlmaLinux, but Debian, RockyLinux, CentOS Stream, Ubuntu Server are also fine choices.
You can find docker images on dockerhub for pretty much everything, and even if you don’t, creating dockerfiles isn’t that hard. This is very convenient because you know where the configuration and data for everything is, you can easily control access (file system, ports, permissions), it’s easy to update. And if you need to reinstall the OS, migrating docker containers is as easy as just copying the data and config files.
DO NOT QUOTE ME ON THIS, but I might be mistaken, but having the drive be internal would help with random operations because the protocol is AHCI directly, but if it’s a hard drive, and given the use case, idk if it really matters. Using anything Ubuntu based probably supports hardware acceleration if what you said is true, so I’m guessing Zorin OS would be fine if you’re familiar with it (tho I personally don’t have the best experience with it)
I recently moved a lot of my services off my daily driver onto what will become a NAS.
I settled on Void because it has such good support for ZFS. If you’re going to use ZFS, I would recommend Void.
Arch can be a bit unstable but it’s simple to work with so that’s an option.
If you run things in docker containers it shouldn’t matter anyway, so ultimately pick something you’re likely to use outside your media box, that way you’ll be able to maintain it better.
As for remote access, I have a separate machine running alpine with wireguard in a docker container, I VPN into that machine to get access to other devices in the network.
As for remote access, I have a separate machine running alpine with wireguard in a docker container, I VPN into that machine to get access to other devices in the network
This is smart, I should do that. I just run Tailscale on my NAS, but I do sometimes worry about it
I bought a synology NAS installed it on that, got some docker containers running sonarr/ sabnzbd etc.
deleted by creator
I would very highly recommend using multiple smaller server grade HDDs instead of one big HDD, and software raid them. If on windows 10, use storage spaces. If on Linux, use zfs. Hard drives will fail and it’s a pain in the ass to rebuild a 5-6tb media library when it does. Ask me how I know 😂
Also, definitely use internal drives. You can shuck the HDD out of the external enclosure and it will work perfectly fine as an internal drive. Bonus, you now have an HDD to USB adapter 😁
I’m personally using Windows 10 pro on an old lga775 supermicro server, with my old graphics card for hardware transcoding. Yeah it’s inefficient and loud but that server board is stable as fuck and cheap as dirt. In windows 10 pro you can set group policies to basically debloat the OS, and there’s also a great debloat script on GitHub. My idle CPU usage went from 20% to 3% just from the scripts and group policies.
DietPi (based on Debian). Incredibly lightweight. Easy menu system for installing apps easily which it then maintains and updates for you, or you can easily install Docker if you prefer that (or both). Contains a backup system if you want to use that too.