That’s a “NOT Cool” move.
What you did was to place your media inside Plex’s internal area.
Everything under /var/lib/plexmediaserver is owned by plex:plex for a reason.
Its cleanup (butler task) ran and, because your files were foreign / unknown,   wooosh.   It only succeeded because the files were owned by plex:plex or had 777/666 permissions, right?
To avoid this happening again:
- Make mount point directories somewhere out under root which don’t conflict with anything.    How about /nas?
- Create subdirectories for each library section you intend to have Plex index.
- Mount the media there
- Set the permissions (i use sec=syson the NFS mount option) such that the NAS is a “big HDD” for the workstation) to the classic 755/644 and yourself as the owner.
My NAS is named ‘Vienna’  so the mount point is /vie
The shared folders are mounted this way
#movies
192.168.0.21:/movies /vie/movies nfs sec=sys,intr,rw,vers=4,timeo=15,rsize=2097152,wsize=2097152,auto,async,x-systemd.after=network-online.target,nofail,bg 0 0
This gives me what you see here:
[chuck@lizum ~/dsm7.505]$ cd /vie/movies
[chuck@lizum movies.506]$ ls -la
total 1397052
drwxr-xr-x 262 chuck chuck      16384 Dec 31 11:37 ./
drwxr-xr-x  49 chuck chuck       4096 Jan  8 01:31 ../
-rw-r--r--   1 chuck chuck        249 Sep 13  2015 addeleted
drwsr-sr-x   2 chuck chuck       4096 Jan  3  2020 After Earth (2013)/
drwsr-sr-x   2 chuck chuck       4096 Jan  3  2020 After the Dark (2014)/
drwsr-sr-x   2 chuck chuck       4096 Dec 16 03:36 Allegiant (2016)/
drwsr-sr-x   2 chuck chuck       4096 Dec 16 17:42 Ant-Man (2015)/
drwsr-sr-x   2 chuck chuck       4096 Oct  6  2018 Ant-Man and the Wasp (2018)/
drwsr-sr-x   2 chuck chuck       4096 Jan  3  2020 Argo (2012)/
drwsr-sr-x   2 chuck chuck       4096 Jan  3  2020 Atlas Shrugged II The Strike (2012)/
drwsr-sr-x   2 chuck chuck       4096 Jan  3  2020 Atlas Shrugged Part I (2011)/
drwsr-sr-x   2 chuck chuck       4096 Jan  3  2020 Atlas Shrugged Part III Who is John Galt (2014)/
Make sense?
Plex’s autopilot works really nice but because it’s Linux  we don’t have anything to prevent us from executing CFIT ![]()
I have created a “Linux How-To”  which is a collection of best practices & tips.
In it,  I suggest ways of doing things then follow through with functional examples.