All options in Settings->Settings and Settings->Manage show: "Server Settings Unavailable"

Server Version#: 1.15.1.710-ece95b3a4_amd64
Player Version#:

I want to include logs, but the page is one of the ones not being loaded. The issue happened with the last version I had installed as well, 1.15.0.659-9311f93fd I don’t know when it went wrong, because I only noticed it when I added a new show and it wasn’t pulling any meta data for it. So, I found another random show and tried adding it too, and same. The list of options as to what to use to pull the meta data was just blank. I went to go mess with those settings and that is when I noticed that I had no access to any of it. I am willing to help with logs, but how do I pull them if I can’t access them from the page?

Using SteamOS brewmaster (2.0) which is basically Debian Jesse, and have been running it for a very long time on this box.

I cannot get any metadata pulled for new shows, and the settings page to pull a set of logs is showing this same thing. Is there a way to pull a log from a command line?
This is what a systemd “status” call shows:
desktop@BlaineTheMono:/home/plex/.plexmediaserver/Cache$ sudo systemctl status plexmediaserver -l

● plexmediaserver.service - Plex Media Server
Loaded: loaded (/lib/systemd/system/plexmediaserver.service; enabled)
Active: active (running) since Thu 2019-02-28 16:56:14 EST; 11min ago
Process: 18138 ExecStartPre=/bin/sh -c /usr/bin/test -d “{PLEX_MEDIA_SERVER_APPLICATION_SUPPORT_DIR}" || /bin/mkdir -p "{PLEX_MEDIA_SERVER_APPLICATION_SUPPORT_DIR}” (code=exited, status=0/SUCCESS)
Main PID: 18142 (sh)
CGroup: /system.slice/plexmediaserver.service
├─18142 /bin/sh -c PLEX_MEDIA_SERVER_INFO_VENDOR="(grep ^NAME= /etc/os-release | awk -F= "{print \$2}" | tr -d \" )" PLEX_MEDIA_SERVER_INFO_DEVICE="PC" PLEX_MEDIA_SERVER_INFO_MODEL="(uname -m)" PLEX_MEDIA_SERVER_INFO_PLATFORM_VERSION="$(grep ^VERSION= /etc/os-release | awk -F= “{print $2}” | tr -d " )" LD_LIBRARY_PATH=/usr/lib/plexmediaserver/lib “/usr/lib/plexmediaserver/Plex Media Server”
├─18152 /usr/lib/plexmediaserver/Plex Media Server
└─18184 /usr/lib/plexmediaserver/Plex Tuner Service /usr/lib/plexmediaserver/Resources/Tuner/Private /usr/lib/plexmediaserver/Resources/Tuner/Shared 1.15.1.710-ece95b3a1 32600 /waitmutex

Feb 28 16:56:20 BlaineTheMono sh[18142]: Traceback (most recent call last):
Feb 28 16:56:20 BlaineTheMono sh[18142]: File “/usr/lib/plexmediaserver/Resources/Plug-ins-ece95b3a1/Framework.bundle/Contents/Resources/Versions/2/Python/bootstrap.py”, line 91, in
Feb 28 16:56:20 BlaineTheMono sh[18142]: import Framework
Feb 28 16:56:20 BlaineTheMono sh[18142]: File “/usr/lib/plexmediaserver/Resources/Plug-ins-ece95b3a1/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/init.py”, line 26, in
Feb 28 16:56:20 BlaineTheMono sh[18142]: import components
Feb 28 16:56:20 BlaineTheMono sh[18142]: File “/usr/lib/plexmediaserver/Resources/Plug-ins-ece95b3a1/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/components/init.py”, line 9, in
Feb 28 16:56:20 BlaineTheMono sh[18142]: from data import Data
Feb 28 16:56:20 BlaineTheMono sh[18142]: File “/usr/lib/plexmediaserver/Resources/Plug-ins-ece95b3a1/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/components/data.py”, line 8, in
Feb 28 16:56:20 BlaineTheMono sh[18142]: from lxml import etree, html, objectify
Feb 28 16:56:20 BlaineTheMono sh[18142]: ImportError: /var/lib/plexmediaserver/.local/lib/python2.7/site-packages/lxml/etree.so: undefined symbol: PyUnicodeUCS4_DecodeLatin1

1 Like

It looks like your installation didn’t go quite right.

I suggest.

  1. Download the package again using a different browser to ensure it wasn’t damaged.
  2. Remove the package (your data is safe)
  3. Install the new binary package again.

If not remedied, Verify this is on a proper Private Network and reclaim the server.
Let me know if you need help.

1 Like

I’m getting PyUnicodeUCS4_DecodeLatin1 errors in Ubuntu 18.04 if I install recent Plex upgrades. I’d have to check the versions, but I think it’s been a couple months now. I confirmed the downloads are not corrupt. Is it possible that you recently changed/upgraded the Python version bundled with the Linux version of Plex but failed to use the --enable-unicode=ucs4 option?

1 Like

@ChuckPa I don’t typically use a “browser”, but wget over ssh to download my .deb files. The Alienware Steam Machine running SteamOS is basically a “gaming console” on top of Debian Jessie, connected to a TV. I don’t manage it from the desktop interface because the overscan is horrible and the on screen keyboard is only just functional in desktop mode. I haven’t tried loading up the desktop user and going to a localhost browser, but I have tried internal IP and through Plex.tv->Launch with no changes. I have done a dpkg -r and followed by another dpkg -i to no avail. As stated, it did show the issue with my 1.15.0.xxxx version as well. I will try and pull a new copy of the *.deb tonight when I get home, I have to be at home to SSH, that is a service I have been reluctant to have accessible outside of my local network.

@mchrisley I will look at the python side of things tonight, because i have a couple of other repos (the SteamOS ones are very focused on just what is needed to run Steam games and Big Picture Mode, and Jessie is a little old) it is possible that one of my other repos I had for some of my other daemons did a python upgrade. Is that a parameter that you need to pass into Plex? Now that I think of it, I had a problem with another application, it might have been SickRage (which I just ditched instead of fix) that it took a day to finally fix a little while back…

Thanks to both of you, I will report back with some updates.

When I roll back to a version from ~December, everything works fine. I think the Plex team changed something with their bundled version of Python in the recent releases, or maybe some Plex config changed where the OS version of Python is getting called now instead of the bundled Python. I haven’t had time to look into it beyond those observations, but the fact that rolling back to a previous version of Plex resolves the settings and metadata Python errors leads me to believe something Python-related was changed in the recent Linux Plex packages.

Re Python:

Plex didn’t change python version. Cleaning up how the package searches for dependencies was.

Plex brings its own python libraries. It doesn’t use the system.

I have seen where, if Plex is running under your username, and you have Python 3.x in your PATH, Plex will inherit that. It will break a lot of functionality.

This occurs in certain distros. It is a very common occurrence in “spins” created from a Redhat or Debian core. They do something ‘cute’ which is helpful for the typical user but not standard

I ran into this with the RPM specifically. Yum is very liberal at attaching dependencies to other packages. I had to fully disable it for the Plex package. (Autoprov: 0) and then specify exactly which dependencies were linked.

Thanks for the tips. I was running Plex under my username with Python 3.x in my PATH. Changing the user in the service override.conf seems to have resolved the errors I was getting - settings come up fine and metadata is loading correctly.

OK, I got a little busy and forgot to come back.

I don’t have an actual “path” in $PATH that states it is for python, that I can see. The service runs as user “plex” I pulled the variable as that user.

plex@BlaineTheMono:/home/desktop$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

I do have python 2 and 3 installed, but “python” points to 2

plex@BlaineTheMono:/home/desktop$ python --version
Python 2.7.9
plex@BlaineTheMono:/home/desktop$ python2 --version
Python 2.7.9
plex@BlaineTheMono:/home/desktop$ python3 --version
Python 3.4.2

Does this mean I am just not understanding, or is one of these paths actually the path to which you are referring?

Your $PATH (the environment variable) is the primary concern.
Each shell’s $path is of lesser concern.

In this case however, it still resolves to python 2.7.9.

Python is fine.

I am very concerned about this “SteamOS” in spite of its Debian 8 roots. I do not know what might have been done to it and any impact it may have on the base runtime libraries Plex needs.

Let’s try one time to force ownership and see if you can manually regain control.

First… What is the IP of the server and IP of the web client you are accessing from -OR- is PMS running on the machine with the keyboard attached?

My PMS is publicly accessible via: tbnorris.hopto.org:32400 (through noip.com)
it looks like the IP is currently: http://24.231.162.159:32400

I went directly to both (instead of the plex.tv way I usually pull up the web interface) and each time it wanted me to pair up my Plex account to them, but the settings still did not work.

On the machine you can exit Steam’s Big Picture Mode and enter a desktop mode (a spin of GNOME Shell), and I can hook a keyboard up to it, but because the head is a 2006 model year 32" LCD 720p TV the over scan is horrible (Big Picture Mode seems to compensate better), so I tend to SSH in instead of dealing with direct interface, and use a Fire TV Stick on that machine to play back what is on the server. I did turn on jessie-backports a while back (maybe for SABnzbd+), and this setup has been running Plex (Beta channel releases the whole time), SABnzbd+, CouchPotato, and was running SickBeard (staled development), then SickRage (stupid single sign-on and auto updater kept breaking the daemon made me jump off of it), and now Sonarr for the last like year or two without much issue. And I very recently started running Ubooquity for my comics on it.
This issue has been more recent, I can’t say how recent, but I know I had access before the new stats page went live, but I don’t remember when it went down.

From my gathering, they tried to stay pretty close to Debian 8 Jessie, and the only real modifications that Valve made was pre-installing the Steam Client, setting default load to be a user named steam with the graphical interface to be Big Picture Mode, newer maintaining of
AMD and NVIDIA proprietary drivers, and some custom partitioning of the hard drive, so that it can try to recover from botched Steam Client updates. Now they may have made more changes that are out of the norm, but I have not directly noticed that.

First off, thank you @ChuckPa and @mchrisley for your help, I figured out the issue, I am pretty sure.
SteamOS, as delivered pre-installed on an Alienware Steam Machine at least., has a pretty nice mechanism for backing up the “base OS” (everything outside of /home) and by default has like 5 partitions, which helps the OS recover itself from a system level update issue, though if there is an issue in the Steam Client side it still can get quite screwed up, which was quite a pain to fix. The only issue I have had with the “base OS” was that the partition that /var/lib lives is VERY small, and the PMS database can get very not small. This partition scheme makes sense because the main point of the OS is to play games that are saved to the \home\steam\ folder…
To fix this limitation of the \var\lib not having any space a long time ago I symbolically linked /var/lib/plexmediaserver -> /home/plex/.plexmediaserver and about a year ago, for some reason, I remade the link to just /home/plex still not sure why I changed it, but I did.

So, not only did I end up with an extra 54GB of PMS database, plug-ins, and logs on my /home partition, but it seems that the /home/plex/.config folder that was “the same as” /var/lib/plexmediaserver/.config because of the ln -s had some stuff in it that PMS really did not like.

To fix my box this morning I did the following:

  1. Shutdown PMS
  2. Cleaned up the old old old 54GB version of the PMS Library: rm -r ~/.plexmediaserver
  3. Remake the directory to hold the Library mkdir ~/.plexmediaserver
  4. Remove the bad link sudo rm /var/lib/plexmediaserver
  5. Move the good current library into the new home mv ~/Library ~/.plexmediaserver/Library
  6. Remake the link sudo ln -s /home/plex/.plexmediaserver /var/lib/plexmediaserver
  7. Started PMS

Then ls ~/.plexmediaserver and saw that a new folder .config was made, and my agents started showing up again, my settings work, and my episodes started getting artwork and names. I am not sure what I was thinking when I did the symlink to just plex’s home folder, but I did do it over a year ago now (Feb 2018) and thus completely forgot about it when it actually started having an issue which looks like it was around Feb 11/12 2019.

At this time I seem to be up and running and have a lot more storage on the /home partition.

OK, there was one more issue that I resolved this morning (this turned out to be the actual issue, I think) the plex user had a home directly of /var/lib/plexmediaserver (more than likely why I moved where /var/lib/plexmediaserver linked). So, when I moved the link to /home/plex/.plexmediaserver it broke SABnzbd+, CouchPotato, Sonarr, and maybe Ubooquity on that same box all of these daemons are running at the plex user.

Well, I corrected the user’s home folder to a more normal /home/plex/ and that re-broke PMS. in /home/plex there was a .local folder (it had an instance of python 2.7) and I tried renaming the .local folder and everything was then fixed. I also removed a .pip folder.

May I suggest you create a proper override? It will stop the need to symlink / crossmount everything

sudo systemctl stop plexmediserver
sudo systemctl edit plexmediserver

Now , add the following lines in the editor, with appropriate values, and save

[Service]
Environment="PLEX_MEDIA_SERVER_APPLICATION_SUPPORT_DIR=/path/to/Application Support"
User=username-being-used-if-not-olex
Group=group-name-being-used-if-not-plex

sudo systemctl daemon-reload

If not using default plex:plex user and group, be certain to sudo chown -R the plex Application Support directory and all below it.

sudo systemctl restart plexmediaserver

I confirm the problem with Ubuntu 18.10:

Apr 05 23:34:37 adrhc.go.ro sh[3610]: Traceback (most recent call last):
Apr 05 23:34:37 adrhc.go.ro sh[3610]: File “/usr/lib/plexmediaserver/Resources/Plug-ins-ad6e39743/Framework.bundle/Contents/Resources/Versions/2/Python/bootstrap.py”, line 91, in <modul
Apr 05 23:34:37 adrhc.go.ro sh[3610]: import Framework
Apr 05 23:34:37 adrhc.go.ro sh[3610]: File “/usr/lib/plexmediaserver/Resources/Plug-ins-ad6e39743/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/init.py”, line 26,
Apr 05 23:34:37 adrhc.go.ro sh[3610]: import components
Apr 05 23:34:37 adrhc.go.ro sh[3610]: File “/usr/lib/plexmediaserver/Resources/Plug-ins-ad6e39743/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/components/init.py”
Apr 05 23:34:37 adrhc.go.ro sh[3610]: from data import Data
Apr 05 23:34:37 adrhc.go.ro sh[3610]: File “/usr/lib/plexmediaserver/Resources/Plug-ins-ad6e39743/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/components/data.py”, li
Apr 05 23:34:37 adrhc.go.ro sh[3610]: from lxml import etree, html, objectify
Apr 05 23:34:37 adrhc.go.ro sh[3610]: ImportError: /home/adr/.local/lib/python2.7/site-packages/lxml/etree.so: undefined symbol: PyUnicodeUCS4_DecodeLatin1

It’s a fresh Plex installation.

Same here, I updated a few days ago and starting having this issue.

Which versions are being installed please?

I ask because I further restricted apt and yum/dnf.
If you’re still running older - that’s a problem.

I fail to see how a Fresh Installation, which defaults to user plex is accessing your home directory?

Where is the override? (plexmediaserver.service file)

Is it in /etc/systemd/system/plexmediaserver.service ? (leftover from old ubuntu)

I actually did this after your post, and then installed the deb at the time, and it immediately reverted .service file to look at the standard location. I am currently running 1.15.4, and see there is a newer release, so I will do the override again (maybe tonight) and update to the new latest and see if it reverts it again. BUT since removing all of the .local folder from the plex user I have not had any problems. I will check to see if SABnzbdplus, or CouchPotato have replaced it. Sonarr is .NET based, and Ubooquity is just a java .jar file so they shouldn’t be doing any python.

Plex must already be installed when you edit the service to create the override.
Doing this out of sequence places the override in the wrong directory

I do not touch any overrides in /etc/systemd/system/plexmediaserver.service.d/override.conf
I do, however, remove any ill-created /etc/systemd/system/plexmediaserver.serivce (which is what happens when customizing before installation. This is known with systemd & Ubuntu.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.