How to Install and Configure Plex on Ubuntu Linux

When you are a media hog and have a big collection of movies, photos or music, the below capabilities would be very handy.

  • Share media with family and other people.
  • Access media from different devices and platforms.

Plex ticks all of those boxes and more. Plex is a client-server media player system with additional features. Plex supports a wide array of platforms, both for the server and the player. No wonder it is considered one of the best media servers for Linux.

Note: Plex is not a completely open source media player. We have covered it because this is one of the frequently requested tutorial.

Install Plex on Ubuntu

For this guide I am installing Plex on Elementary OS, an Ubuntu based distribution. You can still follow along if you are installing it on a headless Linux machine.

Go to the Plex downloads page, select Ubuntu 64-bit (I would not recommend installing it on a 32-bit CPU) and download the .deb file.

plex downloads page

You can install the .deb file by just clicking on the package. If it does not work, you can use an installer like Eddy or GDebi.

You can also install it via the terminal using dpkg as shown below.

Install Plex on a headless Linux system

For a headless system, you can use wget to download the .deb package. This example uses the current link for Ubuntu, at the time of writing. Be sure to use the up-to-date version supplied on the Plex website.

wget https://downloads.plex.tv/plex-media-server-new/1.15.1.791-8bec0f76c/debian/plexmediaserver_1.15.1.791-8bec0f76c_amd64.deb

The above command downloads the 64-bit .deb package. Once downloaded install the package using the following command.

dpkg -i plexmediaserver*.deb
Enable version upgrades for Plex

The .deb installation does create an entry in sources.d, but repository updates are not enabled by default and the contents of plexmediaserver.list are commented out. This means that if there is a new Plex version available, your system will not be able to update your Plex install.

To enable repository updates you can either remove the # from the line starting with deb or run the following commands.

echo deb https://downloads.plex.tv/repo/deb public main | sudo tee /etc/apt/sources.list.d/plexmediaserver.list

The above command updates the entry in sources.d directory.

We also need to add Plex’s public key to facilitate secure and safe downloads. You can try running the command below, unfortunately this did not work for me and the GPG key was not added.

curl https://downloads.plex.tv/plex-keys/PlexSign.key | sudo apt-key add -

To fix this issue I found out the key hash for from the error message after running sudo apt-get update.

key-hash-plex repository
97203C7B3ADCA79D

The above hash can be used to add the key from the key-server. Run the below commands to add the key.

gpg --keyserver https://downloads.plex.tv/plex-keys/PlexSign.key --recv-keys 97203C7B3ADCA79D
gpg --export --armor 97203C7B3ADCA79D|sudo apt-key add -

You should see an OK once the key is added.

Run the below command to verify that the repository is added to the sources list successfully.

sudo apt update

To update Plex to the newest version available on the repository, run the below apt-get command.

sudo apt-get --only-upgrade install plexmediaserver

Once installed the Plex service automatically starts running. You can check if its running by running the this command in a terminal.

 systemctl status plexmediaserver

If the service is running properly you should see something like this.

plex service running
Check the status of Plex Server

Configuring Plex as a Media Server

The Plex server is accessible on the ports 32400 and 32401. Navigate to localhost:32400 or localhost:32401 using a browser. You should replace the ‘localhost’ with the IP address of the machine running Plex server if you are going headless.

The first time you are required to sign up or log in to your Plex account.

plex-login-page
Plex Login Page

Now you can go ahead and give a friendly name to your Plex Server. This name will be used to identify the server over the network. You can also have multiple Plex servers identified by different names on the same network.

Plex-server-setup
Plex Server Setup

Now it is finally time to add all your collections to the Plex library. Here your collections will be automatically get indexed and organized.

You can click the add library button to add all your collections.

plex-add-library
Add Media Library
plex-add-library

Navigate to the location of the media you want to add to Plex .

plex-add-folder

You can add multiple folders and different types of media.

When you are done, you are taken to a very slick looking Plex UI. You can already see the contents of your libraries showing up on the home screen. It also automatically selects a thumbnail and also fills the metadata.

Plex-UI

You can head over to the settings and configure some of the settings. You can create new users(only with Plex Pass), adjust the transcoding settings set scheduled library updates and more.

If you have a public IP assigned to your router by the ISP you can also enable Remote Access. This means that you can be traveling and still access your libraries at home, considering you have your Plex server running all the time.

Now you are all set up and ready, but how do you access your media? Yes you can access through your browser but Plex has a presence in almost all platforms you can think of including Android Auto.

Accessing Your Media and Plex Pass

You can access you media either by using the web browser (the same address you used earlier) or Plex’s suite of apps. The web browser experience is pretty good on computers and can be better on phones.

Plex apps provide a much better experience. But, the iOS and Android apps need to be activated with a Plex Pass. Without activation you are limited to 1 minute of video playback and images are watermarked.

Plex Pass is a premium subscription service which activates the mobile apps and enables more features. You can also individually activate your apps tied to a particular phone for a cheaper price. You can also create multiple users and set permissions with the Plex Pass which is a very handy feature.

You can check out all the benefits of Plex Pass here.

Note: Plex Meida Player is free on all platforms other than Android and iOS App.

Conclusion

That’s about all things you need to know for the first time configuration, go ahead and explore the Plex UI, it also gives you access to free online content like podcasts and music through Tidal.

There are alternatives to Plex like Jellyfin which is free but native apps are in beta and on road to be published on the App stores.You can also use a NAS with any of the freely available media centers like Kodi, OpenELEC or even VLC media player.

Here is an article listing the best Linux media servers.

Let us know your experience with Plex and what you use for your media sharing needs.

Similar Posts

    • This script does nothing but just kidding around with the statements for systemd like service plexmediaserver start, service plexmediaserver restart etc.

      Unneeded bloat.

      • Less typing, never said this was a GOD script or anything like that. My claim is still true. You mamma ever tell you if you have nothing good to say STFU? No? She should have…
        What a rude ass you are…and if you find a few kbs bloated you have problems troll.

  • One minor edit, you need to go to :/web ex: localhost:32400/web , otherwise you get an xml page.

    Thanks for this, I’m moving plex from windows to headless linux and this was easy to follow along and critically it all worked!

  • I have Plex installed on a portion of my c drive which also has Windows 10 in a dual boot configuration. On a separate, physical D Drive. I have all of my media files. I am trying to access those media files by Plex. Note that that D. Drive was my original data drive when I was solely using Windows.

  • “There are free alternatives to Plex like Kodi, OpenELEC and Emby.”

    Not true. Emby is not free – it is exactly the same, subscription based, proprietary system like Plex (with some open-source parts but not really relevant for end-users). The real, open-source alternative for Plex is Jellyfin (fully open-source Emby fork).

    Also you are confusing “online” media servers (Plex, Emby, Jellyfin) with software multimedia centers (Kodi, OpenELEC). The main difference is that media servers almost always are re-encoding videos/movies/music and streaming it to user that is accessing it via website (or proprietary Android/iOS application). So it is more equivalent of “private youtube”.

    Multimedia centers generally are not re-encoding anything – they are playing media “like they are” and generally access to it is via pretty GUI installed on local server – not very usable to streaming to phone or other computer via Internet… So it is more equivalent of SmartTV (but much more “smarter” than real SmartTV). With some third party plugins installed (for example for Netflix and HBO GO) – Kodi is equivalent of AppleTV+, but much, much better;)

    • Hey thanks for pointing that out, I had not worded it properly. How has your experience been with Jellyfin?

      • Great! Jellyfin is very similar to Emby, but without annoying adverts:)

        Jellyfin is great as external access to music videos that I have on my server – even via mobile Firefox, so no mobile proprietary apps needed;). It is OK also for “local play”, but VLC (or Kodi) probably will be better. At least for now mixing music videos and music (audio only files) is not working very well in Jellyfin/Emby – playlists are working better as “music videos only” or “music only”.

        PS. I’m very sad that there is no good local media player with audio and video support in one playlist (except Kodi, but… it is not “normal” player – it is media center with fancy TV interface)… Audacious – no video support; DeaDBeeF – no video support… So I’m using VLC or SMPlayer, but their playlist support is very weak comparing to Audacious/DeaDBeeF…