I have a newly built Plex Media Server running on a Raspberry Pi 4B. If it’s relevant, I’m running the 2021-01-12 build of Raspberry Pi OS. The Pi has a 5 TB USB drive attached that I’m using to store my media libraries.
I’m going to be doing a lot of manual copying of media from other sources to the PMS libraries on the Pi using the Pi’s console. When performing some of these copy operations, the file ownership was being set to pi:pi instead of the required plex:plex. As a result, I had to change file ownership of the new files/folders in the libraries after every copy before the PMS could “see” the files. This quickly got old so I decided to change the PMS to run as “pi” instead of “plex” following the steps in this article.
Everything is working after my changes. Since I’m new to Plex and very green with Linux, I want to make sure that everything I did, I did correctly and that I didn’t miss anything that will bite me later.
Some of my configuration information…
- My 5 TB USB drive is mounted as /media/pi/external-usb.
- All of the libraries are located under a top-level “Libraries” folder.
Here is an abbreviated list of the steps I performed…
- Changed ownership of “Libraries” and everything under it using this command…
sudo chown -R pi:pi /media/pi/external-usb/Libraries
- Created directory /etc/systemd/system/plexmediaserver.service.d and in it, created override.conf containing the following…
[Service]
User=pi
Group=pi
Changed the ownership of the /var/lib/plexmediaserver and everything under it using this command…
sudo chown –R pi:pi /var/lib/plexmediaserver
Rebooted
As I mentioned earlier, everything works. Now, my questions…
Q1: I’m unsure what the last “UMask=0002” line in the example override.conf does and if it’s necessary in my configuration. Would someone mind explaining what this setting does and if I need to add it?
Q2: In the “Special Considerations” section, would someone be able to clarify this…
Containers - Hardware transcoding from within containers requires special handling unique to each container type to ensure the CPU’s GPU (ASIC) is properly mapped and available in /dev/dri where PMS expects it. Group membership requirements must also be satisfied.
Appreciate any assistance!
Thanks.