Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Support] alturismo - Repos

Featured Replies

1 hour ago, alturismo said:

that cant be nice, 2x same docker path on 2 different host pathes ...

may a screen from your docker mappings please as this is not a good setup at all

here the plex docker config

{780D382F-63E6-4B40-9CFB-A259FC35D450}.png

when i change the cover mover settings to

/Filme:/mnt/user/Filme/ /Anime Filme:/mnt/user/Anime Filme/ 

Cache mover show this message in the Log when watching Movie

Sep 15 21:00:03 Unraid root: cache-mover: msm: not matching Filme, breaking here
  • Replies 705
  • Views 55.4k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • Cache Mover Update   see the extra part in the config page (here incl. opened help sections)     Media Server Mode:   off (or empty), will ONLY run regular mod

  • ok, never thought of that (yet)   noted, and yes, no deal breaker ... just have to think about how to tag either Docker or VM ... will leave a note here.   thanks for the feedback

  • Yes , only unbinding than reboot makes the gpu free than I attach it to VM and than it works for VM only and cannot be used for docker containers . To make it work for docker container i have to bind

Posted Images

1 hour ago, alturismo said:

i almost guess, too many special characters ... especially the {} ... may run this while your movie is playing

The command you gave me just gave no response

  • Author
1 hour ago, RuneMason1 said:

The command you gave me just gave no response

i assume it actually fails due your special characters logic in dirnames, when i remember correctly there was also someone else who had this issue.

im pretty sure i resolved the [] brackets, but also these {} may ... i need to check someday, for now, it prolly wont work in your case, sorry to say.

  • Author
1 hour ago, Viper020GER said:

here the plex docker config

and you have nowhere /data as mount as we see ;) but that you figured already

hmm, you are working with root Shares directly and would need some other way to remap ... also multiple rewrites ... let me think about it, but also here, this is not implemented currently in media server mode atm.

12 minutes ago, alturismo said:

i assume it actually fails due your special characters logic in dirnames, when i remember correctly there was also someone else who had this issue.

im pretty sure i resolved the [] brackets, but also these {} may ... i need to check someday, for now, it prolly wont work in your case, sorry to say.

The formatting for directories and movie naming is pretty much standardized these days, from Radarr and such. Having the ID in the name helps plex match

  • Author
6 hours ago, RuneMason1 said:

The formatting for directories and movie naming is pretty much standardized these days, from Radarr and such. Having the ID in the name helps plex match

in the ARR world, yes ;) nevermind now

9 hours ago, RuneMason1 said:

The command you gave me just gave no response

and here, my fault ;) please run

/usr/local/emhttp/plugins/cache-mover/scripts/cache_mover1

may also please provide a screen from here

cat /boot/config/plugins/cache-mover/cachemoversettings

while disguise your token (may also check if there are spaces from copy paste)

image.png

it should at least spit out a error ...

22 hours ago, alturismo said:

and you have nowhere /data as mount as we see ;) but that you figured already

hmm, you are working with root Shares directly and would need some other way to remap ... also multiple rewrites ... let me think about it, but also here, this is not implemented currently in media server mode atm.

okay, now i have removed the second part from the line and it works normally.

but when you have a solution for this usecase, i ready for testing

cache_mover1 didn't do anything either.

image.png

Hi,

I'm also having some trouble getting it setup.

Here is my config file after reading through this thread:

# cat /boot/config/plugins/cache-mover/cachemoversettings 
disks=""
pool="cache"
subfolders="/mnt/user/share/data/plex/movies /mnt/user/share/data/plex/series"
filetypes=".mkv .mp4"
wait_todo="60"
move_excl="yes"
move_excl_list="/mnt/user/system/mover/mover_excl.txt"
move_tune_list="/mnt/user/system/mover/mover_ignore.txt"
rsync_mode="folder"
rsync_move=""
rsync_copy="rsync --stats -azht --mkpath"
switch_mode="switch"
time_keephours="24"
time_keephours_sub="720"
subfolder_keep_sub="/TVRIPS"
target_keephours="user0"
use_recycle="no"
recycle_folder=".Recycle.Bin"
unraid_note="yes"
unraid_syslog="yes"
script_cron="*/10 * * * *"
clean_cron="5 7 * * *"
mediaserver_type="plex"
mediaserver_url="http"
mediaserver_host="localhost"
mediaserver_port="32400"
mediaserver_key="my-api-key-is-here"
mediaserver_only="only"
script_cron_state="started"
clean_cron_state="started"
exclusions="/mnt/user/share/data/torrents/complete"
rewrite_source="/data/plex:/mnt/user/share/data/plex"

I've set the timer to 60 just to make it easier to test/setup but will increase later.

Running this during a stream I get

curl -s "http://localhost:32400/library/metadata/$KEY?X-Plex-Token=my-api-key-is-here"
<?xml version="1.0" encoding="UTF-8"?>
<MediaContainer size="1" allowSync="1" identifier="com.plexapp.plugins.library" librarySectionID="2" librarySectionTitle="TV Shows" ...>
...
<Part id="12671" key="/library/parts/12671/1756343375/file.mkv" duration="420080" file="/data/plex/series/Bluey/Season 2/Bluey (2018) - S02E29 - Movies WEBDL-1080p - (BTN).mkv" size="99797445" audioProfile="lc" container="mkv" videoProfile="high">
<Stream id="28370" streamType="1" default="1" codec="h264" index="0" bitrate="1901" language="English" languageTag="en" languageCode="eng" bitDepth="8" chromaLocation="left" chromaSubsampling="4:2:0" codedHeight="1088" codedWidth="1920" frameRate="25.000" hasScalingMatrix="0" height="1080" level="40" profile="high" refFrames="4" scanType="progressive" width="1920" displayTitle="1080p" extendedDisplayTitle="1080p (H.264)">
</Stream>...

There is nothing in the Cache Mover or Cleaner Logs to help point in the right direction.

I have a single cache drive in the pool which is xfs format. Appdata and system live on the cache drive. My plex is a docker container which looks like this

  plex:
    image: lscr.io/linuxserver/plex:latest
    container_name: plex
    environment:
      - PUID=1000
      - PGID=100
      - ADVERTISE_IP="http://192.168.50.10:32400/"
    volumes:
      - /mnt/user/appdata/plex/config:/config
      - /mnt/user/share/data/plex:/data/plex
...

Any help is appreciated thank you

  • Author
3 hours ago, reveno said:
subfolders="/mnt/user/share/data/plex/movies /mnt/user/share/data/plex/series"

may rather use like described

movies series

image.png

cause plex wont announce the host path anyway ;) as you see in your curl respond

3 hours ago, reveno said:
mediaserver_host="localhost"

keep it as localhost to check if the upper change already resolves your issue, otherwise out your plex ip there (which prolly is your unraid IP in bridge mode)

Thank you. I am sure I'd tried that but setting it again it worked, I was able to keep as localhost for mediaserver_host.

Can I ask too - I don't know if I've properly understood the options for postprocessing.

For example testing on:

cache mover logs
...
Sep 20 10:01:09 Tower root: cache-mover: msm: open file Peter Rabbit 2018 Bluray-720p.mkv will be switched cache now
Sep 20 10:01:10 Tower root: cache-mover: msm: /mnt/cache/share/data/plex/movies/Peter Rabbit (2018)/Peter Rabbit 2018 Bluray-720p.mkv
Sep 20 10:01:10 Tower root: cache-mover: msm: ready to switch live
...

I get this in my mover_excl.txt and mover_ignore.txt (added by cache mover)

/mnt/cache/share/data/plex/movies/Peter Rabbit (2018)

Is this added by cache mover to track files added, and is it correct that cache-mover will move these back to the array after the keep hours regular time?

  • Author
48 minutes ago, reveno said:

Is this added by cache mover to track files added

yes

49 minutes ago, reveno said:

and is it correct that cache-mover will move these back to the array after the keep hours regular time?

it has 2 purposes

1/ cache mover, yes, to delete the cached file after keep hours

(the plugin makes a copy, doesnt move anymore and moves back afterwards, that changed a while ago as i wanted to avoid a 2nd spinup when moving back and FUSE can handle it properly with a copy on cache ssd)

lets call it cache mover "working list"

image.png

2/ for mover tuning to ignore the "cached" files, otherwise may the files are wiped when mover runs.

so the file path should be setted to the mover tuning exclusion list path, sample

mover tuning

image.png

cache mover

image.png

so my plugin will add / remove those files from the mover tuning exclusion list.

add when a file is cache, remove when done (wiped again from cache)

Thank you for the help - the addon is a great concept and I think working well!

  • 2 weeks later...

Trying to get this plugin going as well; this is (part of) my configuration:

disks=""

pool="transcode"

subfolders="movies movies_4k movies_other series series_special"

filetypes=".mkv .mp4 .avi .mpg .mpeg"

wait_todo="120"

move_excl="yes"

move_excl_list="/mnt/user/system/mover/mover_excl.txt"

move_tune_list="/mnt/user/system/mover/mover_ignore.txt"

rsync_mode="folder"

rsync_move=""

rsync_copy="rsync --stats -azht --mkpath"

switch_mode="switch"

time_keephours="24"

time_keephours_sub="720"

subfolder_keep_sub=""

target_keephours="user0"

use_recycle="no"

recycle_folder=".Recycle.Bin"

unraid_note="yes"

unraid_syslog="yes"

script_cron="*/10 * * * *"

clean_cron="5 7 * * *"

mediaserver_type="plex"

mediaserver_url="http"

mediaserver_host="localhost"

mediaserver_port="32400"

mediaserver_key="[MY API KEY]"

mediaserver_only="only"

script_cron_state="started"

clean_cron_state="started"

exclusions=""

rewrite_source="/data:/mnt/user/data/"

This is what I'm seeing in syslog after starting to play a TV show (filename = Sausage Party - Foodtopia - 1x03 - Third Course.mkv) in Plex:

Sep 29 23:30:04 Exa root: cache-mover: msm: not matching .mkv|.mp4|.avi|.mpg|.mpeg, breaking here

Any idea what I'm missing?

Edited by cordswires

  • Author
5 hours ago, cordswires said:

Any idea what I'm missing?

actually setup looking fine what i see from here

what you could check, when started a playback and the upper message appear (no match ...)

in unraid terminal

cat /usr/local/emhttp/plugins/cache-mover/tmp_openfiles2.txt

and post result here, there should be the respond from plex listed

may 2 notes (which shouldnt relate to this issue here)

1/ plex ip, localhost ... can work if plex is running in bridge mode, rather use LAN IP (on bridge, Unraid IP)

2/ subfolder_keep_sub="", enter something in there, if you dont want to use a 2nd setup, then like "abcdefghijkl"

3 hours ago, alturismo said:

actually setup looking fine what i see from heremay 2 notes (which shouldnt relate to this issue here)

1/ plex ip, localhost ... can work if plex is running in bridge mode, rather use LAN IP (on bridge, Unraid IP)

2/ subfolder_keep_sub="", enter something in there, if you dont want to use a 2nd setup, then like "abcdefghijkl"

Apparently it did, because switching out localhost for 192.168.178.5 made the cache-mover work! :)

One more question: I'm using my 'transcode' pool, which is also the pool that stores new data before moving it to my array. When mover is running, it will now try to move files that were placed there by your cache-mover. Obviously, it will skip these files because they already exist on the array (see example below) but is this the correct method, or should I change something so mover does not even try to move the cache-mover files?

Sep 30 08:56:19 Exa move: move: /mnt/transcode/data/series_special/The Late Show with Stephen Colbert/Season 11/The Late Show with Stephen Colbert - 2025-09-25 - Jeremy Strong, Carrie Preston.nfo File exists

  • Author
2 hours ago, cordswires said:

Apparently it did, because switching out localhost for 192.168.178.5 made the cache-mover work! :)

glad to hear ;)

2 hours ago, cordswires said:

but is this the correct method, or should I change something so mover does not even try to move the cache-mover files?

in combination with mover tuning plugin, may take a look at these settings (post processing ...), then the plugin will put them on a exclusion list for mover and wont be touched anyway, removed then from cache when EOL is reached on cache.

9 hours ago, alturismo said:

in combination with mover tuning plugin, may take a look at these settings (post processing ...), then the plugin will put them on a exclusion list for mover and wont be touched anyway, removed then from cache when EOL is reached on cache.

Is it this setting in the Mover Tuning plugin?

Screenshot 2025-09-30 at 21.03.37.png

  • Author
1 hour ago, cordswires said:

Is it this setting in the Mover Tuning plugin?

exactly, this file is updated through my plugin then

I'm seeing this in the cache cleaner log, what does it mean?

Oct 2 07:05:01 Exa root: cache-cleaner: /mnt/transcode/data/series/Family Guy/Season 23 34 ago size doesnt match on disk, please check manually

Oct 2 07:05:01 Exa root: cache-cleaner: /mnt/transcode/data/series/South Park/Season 27 34 ago size doesnt match on disk, please check manually

Edited by cordswires

  • Author
7 hours ago, cordswires said:

I'm seeing this in the cache cleaner log, what does it mean?

its a message which says

files on /cache <> /mnt/user

most likely your files are spreaded on several disks and you didnt watch all episodes.

moving whole season from different disks will be coming in next update again (when i added the multi array support, this has fallen down ... my fault)

story behind, safety to check if all files are still on /mnt/user and there where no changes ... so then i recommend to wipe manually. shouldnt appear if

/ all episodes (all files) on a season (movie) are on 1 disk

/ next update

13 hours ago, alturismo said:

its a message which says

files on /cache <> /mnt/user

most likely your files are spreaded on several disks and you didnt watch all episodes.

moving whole season from different disks will be coming in next update again (when i added the multi array support, this has fallen down ... my fault)

story behind, safety to check if all files are still on /mnt/user and there where no changes ... so then i recommend to wipe manually. shouldnt appear if

/ all episodes (all files) on a season (movie) are on 1 disk

/ next update

Understood :-D

  • 3 weeks later...

I'm getting these errors, any idea what they can mean? Movies only, tv shows are fine...

Oct 18 00:10:04 Exa root: cache-mover: msm: rsync: [sender] change_dir "/mnt/disk1/data/downloads/complete/Honey Dont (2025) [720p] [BluRay] [YTS.MX]/Honey.Dont.2025.720p.BluRay.x264.AAC-[YTS.MX].mp4\#012/mnt/disk1/data/movies/Honey Don't! (2025)" failed: No such file or directory (2)
Oct 18 00:20:04 Exa root: cache-mover: msm: rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1338) [sender=3.4.1]
Oct 18 10:10:04 Exa root: cache-mover: msm: rsync: [sender] change_dir "/mnt/disk1/data/movies/How to Train Your Dragon (2010)/How to Train Your Dragon.mp4\#012/mnt/disk1/data/movies/How to Train Your Dragon 2 (2014)/How to Train Your Dragon 2.mp4\#012/mnt/disk1/data/movies/How to Train Your Dragon Homecoming (2019)/How to Train Your Dragon Homecoming.mp4\#012/mnt/disk1/data/movies/How to Train Your Dragon The Hidden World (2019)/How to Train Your Dragon The Hidden World.mp4\#012/mnt/disk1/data/movies/How to Train Your Dragon (2025)" failed: No such file or directory (2)
Oct 18 10:10:04 Exa root: cache-mover: msm: rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1338) [sender=3.4.1]

What do the #012 symbols mean, and why am I seeing 1) old folders (/downloads/complete) that were download folders before Radarr moved the files to its final location or 2) all the How to Train Your Dragon movies, when only the 2025 movie was played by one of my users?

  • Author
10 hours ago, cordswires said:

and why am I seeing 1) old folders (/downloads/complete) that were download folders before Radarr moved the files to its final location

in media server mode thre should be only processing of played items reported by plex, but for ARR users and co may use the exclusion function and insert "/download" as path there.

image.png

10 hours ago, cordswires said:

2) all the How to Train Your Dragon movies, when only the 2025 movie was played by one of my users?

hmm, cant reproduce here, may a feedback from your side

1/ start playback from "hot to ..."

2/ wait until your cron run

3/ SHORT after do the following in your unraid terminal

cat /usr/local/emhttp/plugins/cache-mover/tmp_openfiles2.txt

this willreturn the fetched open files reported by plex, please post them here so i can take a look

  • 1 month later...

I have the following issue:
Plugin is installed and configured. On first install i had the issue where gdb did not exist.
I reinstalled the plugin (and python as well), gdb works now.
The plugin seems to work - at least the files show up on cache, and as far as i can see also stream from there. (I have not come so far as to see if they are removed eventually)
The issue is: I see no logs on the cache-mover settings page. nothing in the cache mover log tab and nothing in the cache mover lists tab either. On my first install i saw the gdb issue there.
Restarting the whole server did not help.
Would be nice to see which files are cached and logs in general...

disks=""
pool="cache"
subfolders="Movies Shows"
filetypes=".mkv .mp4"
wait_todo="120"
move_excl=""
move_excl_list="/mnt/user/system/mover/mover_excl.txt"
move_tune_list="/mnt/user/system/mover/mover_ignore.txt"
rsync_mode="copy"
rsync_move=""
rsync_copy="rsync --stats -azht --mkpath"
switch_mode="switch"
time_keephours="25"
time_keephours_sub="720"
subfolder_keep_sub="/Shows"
target_keephours="user0"
use_recycle="no"
recycle_folder=".Recycle.Bin"
unraid_note=""
unraid_syslog=""
script_cron="*/10 * * * *"
clean_cron="5 7 * * *"
mediaserver_type="plex"
mediaserver_url="http"
mediaserver_host="192.168.1.57"
mediaserver_port="32400"
mediaserver_key="SECRET"
mediaserver_only="only"
exclusions=""
rewrite_source="/mnt:/mnt/user"
script_cron_state="started"
clean_cron_state="started"

image.png

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.