Install Plex Media Server on Raspberry Pi 3. Thanks to the work of uglymagoo on the Plex forum it is very easy to install Plex using the Synology armv7 package (now it uses the ReadyNAS package). The previous Raspberry Pi 2 guide became quite long and cluttered, this one aims to be cleaner.
There is a Plex Media Server Raspberry Pi 3 image based on the minimal Raspbian distro Minibian at the bottom of this post with the required modification to force Plex transcoding if you just want to test if Plex on the Raspberry Pi 3 will suit your needs. This tutorial assumes you are running Raspbian Jessie. This how-to also has a section on fixing Plex permissions so if your Plex can't see your folders then you will be able to solve that problem here.
| Pi Unit | ||||||||
|---|---|---|---|---|---|---|---|---|
| Raspberry Pi 3 | Quad Core | |||||||
| Raspberry Pi 2 | Quad Core | |||||||
| Raspberry Pi | Single Core | |||||||
| Banana Pi | Dual Core | |||||||
| Banana Pi Pro | Dual Core |
Install Plex Media Server on Raspberry Pi 3
Installation Checklist
For the best performance for Plex Media Server on the Raspberry Pi 2 refer to this checklist
- Verify you have the en_US locale
- Make sure you have libexpat1 installed
- Do not use WiFi if you want the best result
- Monitor Plex Media Server and restart it automatically with this guide.
- Do not use Plex.tv instead use Dynamic DNS and a reverse proxy with this guide to avoid transcoding problems.
- If you are having transcoding issues try using an older transcoder with this guide.
Pre-Install Requirements
Generate Locales
First we need to verify the en_US locale is enabled
This command lists current locales
locale -aMy output looks like this
C
C.UTF-8
en_US.utf8
POSIXIf you don't have en_US.utf8 you can generate it
To generate the locale edit the locale generator configuration file first to enable the locale
sudo nano /etc/locale.genUncomment this line by deleting the #
# en_US.UTF-8 UTF-8Ctrl+X, Y and Enter to save
Now generate the locales
sudo locale-genIf you get the locale-gen cannot be found error this should solve it
echo "export PATH=$PATH:/usr/sbin" >> ~/.profileNow generate the locales again if locale-gen wasn't found
sudo locale-genReconfigure locales for good measure (source)
sudo dpkg-reconfigure localesNow run locale to list them
localeIf you see these errors (on Jessie Lite) follow the next step
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directoryOpen your environment file
sudo nano /etc/environmentAdd these lines
LC_ALL=en_US.UTF-8
LANG=en_US.UTF-8Ctrl+X, Y and Enter to Save
Install Plex Media Server on Raspberry Pi 3 using Repository
Enable https transport or you will get this error: E: The method driver /usr/lib/apt/methods/https could not be found.
sudo apt-get update && sudo apt-get install apt-transport-https binutils -y --force-yesGrab uglymaoo's gpg key for his repository
wget -O - https://dev2day.de/pms/dev2day-pms.gpg.key | sudo apt-key add -Add uglymagoo's repository
echo "deb https://dev2day.de/pms/ jessie main" | sudo tee /etc/apt/sources.list.d/pms.listUpdate your package lists
sudo apt-get updateInstall Plex Media Server
sudo apt-get install plexmediaserver-installer -yUpgrading Plex is as easy as running this command
Note: The repository contains the latest non-Plex Pass version. If you want the Plex Pass version you will have to build it yourself using the manual method 3 outlined here.
sudo apt-get update && sudo apt-get upgrade -yCheck out additional hard drives for your media
| USB Hard Drive Model | |||
|---|---|---|---|
| Western Digital My Passport Ultra Portable Hard Drive | |||
| Western Digital My Passport Ultra Portable Hard Drive |
Transcoding Tools
Plex Media Server requires a new libc6 module that you can pull from the jessie repo (thanks again to uglymagoo). This part may not necessary if you used the precompiled deb package at the top.
Install libexpat1 for help playing in the Android app
sudo apt-get install libexpat1 -yFix Plex Permission Issues
If Plex isn't reading your drives or folders you can do one of two things, change the permissions of your external storage or change the user Plex is running as (which could mean you need to rescan for metadata).
First try adding your plex user to your regular user's group that owns the mount point for your hard drive
sudo usermod -aG pi plexThen add your regular user to the plex group if the plex group exists
sudo usermod -aG plex piThen set the permissions for the folder containing your media to 775 so the plex in the user's group can read them
sudo chmod -R 775 /folder/with/mediaIf that still fails you can change the permissions where /mnt/usbstorage is your mount path for your hard drive so everybody can read, write and execute
sudo chmod -R 777 /mnt/usbstorageAlternatively you can change the user Plex runs as to your pi user
To change which user Plex runs as, open this file
sudo nano /etc/default/plexmediaserverChange this line, replace plex with your username you use to log on or the owner of the mounted drive, most likely pi
PLEX_MEDIA_SERVER_USER=piCtrl+X, Y and Enter to save
Change the owner of your Plex folders to the user you are changing
sudo chown -R pi:pi /var/lib/plexmediaserverThen restart your Plex server
sudo service plexmediaserver restartIf Plex still isn't working see the manual installation guide.
Raspberry Pi 3 Plex Media Server Image
If you cannot see the unlocker whitelist this site in AdBlock 😉
For the Plex Media Server image, login with root, password htpcguides and use raspi-config to expand the file system, you can install WiFi drivers if they are not included in the kernel
apt-get install firmware-linux-nonfree -yEnjoy Plex Media Server on your Raspberry Pi 3 🙂