Plex Server

Hello friends, I have 2 Dell R410s with me and I’m having trouble using them.
Drives Available: 8 x 300GB SAS, 2 x 10TB, 1 x 4TB, 1 x 2TB

I want to run Plex media server on one. I want them to wake on LAN when a stream is needed. If I could have the 10TB drives in some sort of Linux storage pool that would be great (I’m studying up on KVMs ATM).

I have one running Ubuntu right now with a storage pool of 4 x 300GB drives. The setup was shoddy and honestly I’m not sure how it works or what my level of redundancy is. What should I do?

Not sure what your problems are, but my router or another linux machine can sent wake on lan requests.

For Plex I am using CentOS and setting everything up was real easy and runs for me for couple of years now.

2 Likes

WoL should be easy to setup, enable it in the BIOS then add it to netplan. Easily googleable. That said, my guess is Plex media server expects to be running at all times, so I don’t know if it will work with WoL.

Mirror the 10GB drives with mdadm. Again google.

For the 4 300GB drives, I would just throw them out because, 300GB drives? It’s 2019, you can buy 240GB SSDs for $40. But if you want to keep them for some reason put them in RAID5 to maximize storage or RAID10 otherwise.

3 Likes

I agree SAS drives are not energy efficient anymore. But they will perform well for oflloading data while you set up everything.

1 Like

To clarify my troubles are setting up a ‘RAID’-like service and make it wake on LAN.

I have been having issues with getting the back-plane to recognize the 10 TB they come up as 2.2 TB and it appears from my research that his model doesn’t support anything more. What should I replace it with to fix this?

There are 2 limitations in place: RAID/HBA Card and possible extender in the backplate.

The problem with backplate can be identified by by-passing it.
Problem with HBA and RAID cards can be usually googled from datasheets.
So we can help there.

Would you guys appreaciate a set up guide for plex and CentOS?

EDIT:
There are 1:1 backplates (They do not operate extenders and as such do not have limitations for size and trim)
There are cheap LSI/RAID cards with higher address size to accomodate larger drivers.
Like I mentioned above, you will likely rhave to replace one or both of these.
HINT: Most servers have pure SATA ports on the board to accomodate CDROMs you could use that to test stuff.

1 Like

Yes. A setup guide for Plex on CentOS would be more than ideal. I initially had plans for running Plex in a container on CentOS.

As far as the backplane is concerned it looks 1:1 (I will check to validate this soon). It holds only 4 drives. There is SATA on the board but no SATA Power cables. However I could jerry-rig something with another PSU for testing purposes.

Sent us the Adapter card and we can quickly google if it is a size problem.
If it is 1:1 SATA, them you are in good luck. You could get away with just cables and PCI Express SATA card.
Or you can even use the existing SAS cable (4 links cable most likely) and buy a cheap SATA adapter with that connector. This is usually cheaper than LSI.

If you want to run in docker you’re in luck, Plex releases in that format.

1 Like

That guide is horrible… let me draft a quick guide here.
If people are interested I will turn it into a how-to original post.

Installing Plex Media Server na CentOS 7

Sources:

Overview

Plex offers several services and the following is recommended:

  • Make sure you have decent performance and space on /var. Database and cache takes a lot of space (20GB can be reached quickly) and Plex perfomance depends a lot on performance of this DB and cache.
  • Do not worry about amount of directories for the same share
  • Do worry about moving from one directory to another (Set up an unionfs for that purpose)
  • Do not run Plex transcoding on platforms with poor CPU performance, not worth it for streaming.
  • Do not forget to reserve space for Transcodes, this place should handle 50Mb/s read and write (i.e. not a shitty SSD or the same drive as the shares)

Setting up disabled repo PlexRepo

Yum and later DNF is perfect to handle 3rd party binaries and plex does offer RPM builds. You can set it up securely by using yum protect and yum priorities, but we are going to do it the easy way. This only requires the repo to be disabled by default and installing packages from it require manual intervention.

Configuring yum

echo "# Plex.repo file will allow dynamic install/update of plexmediaserver.
[PlexRepo]
name=PlexRepo
baseurl=https://downloads.plex.tv/repo/rpm/\$basearch/
enabled=0
gpgkey=https://downloads.plex.tv/plex-keys/PlexSign.key
gpgcheck=1" > /etc/yum.repos.d/plex.repo

Importing GPG key

rpm --import https://downloads.plex.tv/plex-keys/PlexSign.key

Installing Plex Media Server

When installing with repo enabled pay attention for dependencies. They should not come from PlexRepo

yum --enablerepo=PlexRepo install plexmediaserver

Updating Plex Media Server"

yum --enablerepo=PlexRepo update plexmediaserver

Configuration

Enabling the service

systemctl enable plexmediaserver

Starting the service

systemctl start plexmediaserver

Adding firewalld services

Plex offers several options and this part just adds them to the list.
You will choose later which ones you want to enable.

firewall-cmd --permanent --new-service=plexmediaserver
firewall-cmd --permanent --service=plexmediaserver --set-short=plexmediaserver
firewall-cmd --permanent --service=plexmediaserver --set-description="Ports required by plexmediaserver."
firewall-cmd --permanent --service=plexmediaserver --add-port=32400/tcp
firewall-cmd --permanent --new-service=plexmediaserver-dlna
firewall-cmd --permanent --service=plexmediaserver-dlna --set-short=plexmediaserver-dlna
firewall-cmd --permanent --service=plexmediaserver-dlna --set-description="Enable DLNA for plexmediaserver."
firewall-cmd --permanent --service=plexmediaserver-dlna --add-port=1900/udp
firewall-cmd --permanent --service=plexmediaserver-dlna --add-port=32469/tcp
firewall-cmd --permanent --new-service=plexmediaserver-discovery
firewall-cmd --permanent --service=plexmediaserver-discovery --set-short=plexmediaserver-discovery
firewall-cmd --permanent --service=plexmediaserver-discovery --set-description="Enable local discovery for plexmediaserver."
firewall-cmd --permanent --service=plexmediaserver-discovery --add-port=5353/udp```
firewall-cmd --permanent --service=plexmediaserver-discovery --add-port=32410/udp
firewall-cmd --permanent --service=plexmediaserver-discovery --add-port=32412/udp
firewall-cmd --permanent --service=plexmediaserver-discovery --add-port=32413/udp
firewall-cmd --permanent --service=plexmediaserver-discovery --add-port=32414/udp
firewall-cmd --permanent --new-service=plexmediaserver-control
firewall-cmd --permanent --service=plexmediaserver-control --set-short=plexmediaserver-control
firewall-cmd --permanent --service=plexmediaserver-control --set-description="For controlling Plex for Roku and Plex Home Theater via Plex Companion."
firewall-cmd --permanent --service=plexmediaserver-control --add-port=3005/udp
firewall-cmd --permanent --service=plexmediaserver-control --add-port=8324/udp

Enabling firewall services for using on LAN

These rules are useful for LAN setup, they are not recommended for Interner access.

firewall-cmd --add-service=plexmediaserver --permanent
firewall-cmd --add-service=plexmediaserver-dlna --permanent
firewall-cmd --add-service=plexmediaserver-discovery --permanent
firewall-cmd --reload
firewall-cmd --list-all

Connecting the first time over localhost

Use the linked graphical guides to the final clicks. I can include it later.

Steps to take before adding library files

Setup subtitles and plugins

You should do this before you start loading meta-data as Plex will ignore it later and you will have to force it.

Disable automatic trashing of items in Plex

When you are building your library you do not want to see things disappear when you made a mistake.

Make sure you have correct access rights

Split libraries as much as it makes sense.

Plex performance drops like a stone once you have libraries with thousands of entries.

Make sure you do not have too many nested directories

Plex automatic detection gets really confused once you go more than 2 directories deep.

Finally start small, do not try to add 1400 movies at once :slightly_smiling_face:

Questions

DLNA or not DLNA?

You should enable it and allow it on LAN. For capable clients like VNC it is perfect. The only exception is a multi-user household where your account will be updated when you Father watches shows about cars :joy:

SELinux compatibiliy?

There are no major issuess with SELinux

Recommended plugins?

Definitely install SRT2UTF for subtitles downloaded automatically:
https://github.com/ukdtom/SRT2UTF-8.bundle/wiki

I also recommend setting up AudioBooks in Plex:
https://github.com/macr0dev/Audiobooks.bundle

4 Likes

I’ll start this tonight. :wink::ok_hand:

Sorry I missed your comment. Do you want me to send you a pic of the adapter?

Well if you want help with diagnosing the size of disk problem, then we need the type. Command lspci -vnn would be enough.

Thanks for the very clearly laid out instructions. It is defaulting to PlexRepo. it says
plexmediaserver x86_64 1.17.0 (version) PlexRepo 98 MB

So I went along with the instructions, then went about migrating the old metadata such as the metadata folder etc. but now I can’t find the server using the loop-back address or any other means.

‘systemctl list-unit-files | grep enabled’ shows that the Plex is enabled. I also checked that it is running.

1 Like

With loopback device you mean localhost/127.0.0.1 on the PC where plex is? You got a gui on your centos box for a browsers? Or how did you do it?

Im not sure if I needed to access it on localhost for the first time, or if it let me access it from the local network right away.

The guides are uing putty/ssh to create a TCP tunnel.
I did not cover that part as it was already linked before and this was a quick draft.

No there is no need to run GUI, setup can be done remotely no problem.

I made a few messups along the way but I have It almost fully operational with CentOS 8 and and all the metadata grabbed.

I would still like to put the old user data in there without messing things up too much. Currently I’m putting on a VNC, then Tautulli (PlexPY).

Issue: I get an error message from Plex saying ‘The file does not exist, make sure the drive is mounted’
Solution: Mountpoint had a space in the name. Plex could not access the drive correctly.

The drives are mounted. I think it is a permissions issue but I’m going to take a snapshot before I push any further.