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.

[Plugin] Mover Tuning

Featured Replies

17 hours ago, CS01-HS said:

see the previous mover-tuning plugin also used unraid's "move":

Yep, thanks for link now I'm confused 

What was idea to use rsync instead of Unraid binary move... Needs more code checks... 

  • Replies 3.5k
  • Views 485.7k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • hugenbdd
    hugenbdd

    New Version 07-03-2023   HUGE thanks/Shout-out to @Swarles for the help with updating code fixes and adding a great new feature.  You can now have some customization per share.  It's great t

  • How to ignore a SINGLE file 1.) Find the path of the file you wish to ignore.     ls -ltr /mnt/cache/Download/complete/test.txt         root@Tower:/# ls -ltr /mnt/cache/Download/complete/test

  • Hi all, I made a new version of the plugin. This fork replaces @hugenbdd's plugin which is not maintained anymore and will land in community applications if your feedbacks are positive.  

Posted Images

51 minutes ago, foux said:

do you think you can have a fix for this? Basically the plugin doesn't work when we've got a big ignore list. Thanks!

Are you saying its broked after 2024-08-15 version? 

You can open issue on github for I can follow it. I will try to check it

8 hours ago, foux said:

@Masterwishx do you think you can have a fix for this? Basically the plugin doesn't work when we've got a big ignore list. Thanks!

Just came here to post about the same thing.  After fixing my previous issue, I also seem to be having some weird issues with mover trying to move things in the ignore list.  The Mover Action log seems to have duplicate entries for the same file, one to move, one to keep.   My ignore file is only 76 entries long, but some of the filepaths are quite long... however, i dont think the length is a factor.

I have extracted the find command from the age_mover script.  Then run it manually, and I can also confirm that the file list returned contains files in the ignore!

So I've simplified further and ran a simple find:
 

find "/mnt/hddcache/media" -type f -not -name '.placeholder' -not -path "/mnt/hddcache/media/completeDownloads/*" -not -name "/mnt/hddcache/media/Films/The Bank Job (2008) {imdb-tt0200465}/The Bank Job (2008) {imdb-tt0200465} [WEBDL-1080p][AAC 2.0][h264].mp4"

And that command is STILL returning /mnt/hddcache/media/Films/The Bank Job (2008) {imdb-tt0200465}/The Bank Job (2008) {imdb-tt0200465} [WEBDL-1080p][AAC 2.0][h264].mp4 in the list.  Nothing I try will exclude that file from the results.  I'm not sure whats going on, but I decided to change tact. 

I started looking at alternate ways, and i seems using a grep is more consistent, at least for me, but I had the change the printf to print each result on a new line, which meant changing the awk too, but ultimately, it comes out to a find command like this, which seems to give me the correct results.

i.e.

find "/mnt/hddcache/media" -type f -depth  -not -name '.placeholder' -printf '%T@|%s|%S|%n|%i|%p|\n' | grep -vFf /path/to/myMoverignore.txt | awk -v RS='\n' -v FS='|'         -v SPARSENESS='0'         -v PRIMARYSTORAGENAME='hddcache'         -v SECONDARYSTORAGENAME='user0'         -v SHARENAME='media'         -v SHAREUSECACHE='yes'         -v PRIMARYSIZETHRESH='0' ' { printf "%s|%s|%s|%s|%d|%d|%d|%d|%d|%d|%s\n", PRIMARYSTORAGENAME, SECONDARYSTORAGENAME, SHARENAME, SHAREUSECACHE, $1, PRIMARYSIZETHRESH, $2, $3, $4, $5, $6}'

 

Let me know if I can help out any more!


EDIT: I've had some additional thoughts since, and I think the grep solution is good for files, however, it probably doesnt work for folders.  I think the find command is a regex, which might be why it doesnt work properly for my filenames, that contain regex characters.  Maybe a hybrid solution with the find command filtering folders, and the grep filtering files?  I dont know. Just some thoughts :)
 

Edited by JayBriers
More thoughts...

3 hours ago, JayBriers said:

Just came here to post about the same thing.  After fixing my previous issue, I also seem to be having some weird issues with mover trying to move things in the ignore list.  The Mover Action log seems to have duplicate entries for the same file, one to move, one to keep.   My ignore file is only 76 entries long, but some of the filepaths are quite long... however, i dont think the length is a factor.

I have extracted the find command from the age_mover script.  Then run it manually, and I can also confirm that the file list returned contains files in the ignore!

So I've simplified further and ran a simple find:
 

find "/mnt/hddcache/media" -type f -not -name '.placeholder' -not -path "/mnt/hddcache/media/completeDownloads/*" -not -name "/mnt/hddcache/media/Films/The Bank Job (2008) {imdb-tt0200465}/The Bank Job (2008) {imdb-tt0200465} [WEBDL-1080p][AAC 2.0][h264].mp4"

And that command is STILL returning /mnt/hddcache/media/Films/The Bank Job (2008) {imdb-tt0200465}/The Bank Job (2008) {imdb-tt0200465} [WEBDL-1080p][AAC 2.0][h264].mp4 in the list.  Nothing I try will exclude that file from the results.  I'm not sure whats going on, but I decided to change tact. 

I started looking at alternate ways, and i seems using a grep is more consistent, at least for me, but I had the change the printf to print each result on a new line, which meant changing the awk too, but ultimately, it comes out to a find command like this, which seems to give me the correct results.

i.e.

find "/mnt/hddcache/media" -type f -depth  -not -name '.placeholder' -printf '%T@|%s|%S|%n|%i|%p|\n' | grep -vFf /path/to/myMoverignore.txt | awk -v RS='\n' -v FS='|'         -v SPARSENESS='0'         -v PRIMARYSTORAGENAME='hddcache'         -v SECONDARYSTORAGENAME='user0'         -v SHARENAME='media'         -v SHAREUSECACHE='yes'         -v PRIMARYSIZETHRESH='0' ' { printf "%s|%s|%s|%s|%d|%d|%d|%d|%d|%d|%s\n", PRIMARYSTORAGENAME, SECONDARYSTORAGENAME, SHARENAME, SHAREUSECACHE, $1, PRIMARYSIZETHRESH, $2, $3, $4, $5, $6}'

 

Let me know if I can help out any more!
 

Maybe @foux can confirm it's working? 

You mean with long list of files? I can confirm it's not working, that's why I created the GitHub issue

Just now, foux said:

You mean with long list of files? I can confirm it's not working, that's why I created the GitHub issue

ohh seems its another issue with long filenames ...😒

Oh. I didn't replicate this. But I didn't really try. 

I've done some more debugging this evening, and figured out two things.

  • The find command shouldn't be using `-name` for entire paths, even if the path is to a file.
  • Square brackets in a filepath breaks find.


Running the following command now correctly removes that file from the list. 

 

find "/mnt/hddcache/media" -type f -not -name '.placeholder' -not -path "/mnt/hddcache/media/completeDownloads/*" -not -path "/mnt/hddcache/media/Films/The Bank Job (2008) {imdb-tt0200465}/The Bank Job (2008) {imdb-tt0200465} \[WEBDL-1080p]\[AAC 2.0]\[h264].mp4"


So,  as for age_mover, I think I've managed to fix my issues by escaping the opening square bracket via: 

ESCAPED_PATH=${skipped_path//[/\\[}

which I then place into the FINDSTR (while also changing -name to -path)

 

FINDSTR="$FINDSTR -not -path \"${ESCAPED_PATH}\"" # changed from '${skipped_path}'"


 

One feature request:
Can you make it so that synchronising is a "per share" option, as depending on the type of data, I might not want to synchronise every share.

Has anyone seen/experienced these issues?  Mover is triggered, seeing those errors...and then nothing happens. Have well over a TB of data waiting to be moved...but doesn't seem to be working.
 

Feb 27 15:00:04 PlexRAID move: /usr/local/sbin/move does not exists, creating soft link
Feb 27 15:00:04 PlexRAID move: ln: failed to create symbolic link '/usr/local/sbin/move': File exists
Feb 27 15:00:04 PlexRAID move: mover: started
Feb 27 15:00:04 PlexRAID move: script: Generating exclusions list...
Feb 27 15:00:04 PlexRAID move: script: Validating /mnt/user/appdata/misc/mover_tuning_excluded_files.txt
Feb 27 15:00:04 PlexRAID move: script: Validating /mnt/user/appdata/misc/mover_tuning_excluded_directories.txt
Feb 27 15:00:05 PlexRAID move: script: Generated exclusions list /mnt/user/appdata/misc/mover_tuning_exclusions.txt
Feb 27 15:00:05 PlexRAID move: mover: finished

 

5 hours ago, chutson said:

but doesn't seem to be working.

1/ may check which mover tuning version is installed (and which unraid version)

2/ may post your setup page here too (is dry run disabled as sample ?)

3/ script, exclusions lists, is there something in there

 

14 hours ago, JackTovey said:

One feature request:
Can you make it so that synchronising is a "per share" option, as depending on the type of data, I might not want to synchronise every share.

Please open github issue for it 

On 2/25/2025 at 2:29 AM, tehg said:
Path: /mnt/*/appdata

The fix I think still not good enough, we need to list all `/mnt/*/sharename`

When `cache prefer` or `rebalanced and unnanttend`? 

Long time user here, though I've just come across the following:

image.png.7e7e85c29d432884c5ac0dfd4b9dba9c.png

 

Does this do what it sounds like? Traditionally we were always told to never have files in mutlipe places as it can screw up fuse.

 

Is this safe to use?

48 minutes ago, -Daedalus said:

Does this do what it sounds like? Traditionally we were always told to never have files in mutlipe places as it can screw up fuse.

 

Is this safe to use?

as long as you know what you do, sure is ;)

 

its dangerous in terms usinf file actions via /mnt/user/... while files are multiply there, but overall, its no harm as long as you know what you do. Intention here was more, you have a "backup" in array ...

 

i use "dublettes" for long as i always "cached" Media Files, meanwhile also as plugin (cache mover) which does it vice vers, copy from array to cache for Media Playback to have disks in spindown as much as possible.

On 2/27/2025 at 9:45 PM, alturismo said:

1/ may check which mover tuning version is installed (and which unraid version)

2/ may post your setup page here too (is dry run disabled as sample ?)

3/ script, exclusions lists, is there something in there

 

1. Mover Tuning Version: 2023.12.19 
2. Attached setup page below
3. Attached exclusion list below

screencapture-192-168-1-253-Settings-Scheduler-2025-03-01-07_37_35.png

mover_ignore.txt

Just now, chutson said:

1. Mover Tuning Version: 2023.12.19 
2. Attached setup page below
3. Attached exclusion list below

screencapture-192-168-1-253-Settings-Scheduler-2025-03-01-07_37_35.png

mover_ignore.txt 49 B · 0 downloads

Just to confirm...I seem to have gotten it working. 

Removed plugin.  Added the 2025.02.24 version of the plugin.  Copied previous setup over.  Seems to be working accordingly and is currently moving files.  Will update in a few days if all keeps working.

I will say...it is a bit confusing having 3 different versions without being able to really differentiate 'which' one you should be using. 

Screenshot 2025-03-01 at 8.00.49 AM.png

1 hour ago, chutson said:

I will say...it is a bit confusing having 3 different versions without being able to really differentiate 'which' one you should be using. 

It's moderator design to remove plugin from CA, I can only change icon not sure this can help. you can see version what latest updated. 

8 minutes ago, Masterwishx said:

It's moderator design to remove plugin from CA, I can only change icon not sure this can help. you can see version what latest updated. 

Yes that would help.  I feel like most aren't going to click into the info for each to determine what is the 'latest updated'.  I didn't even know there was an update for example until I explicitly looked for it. 

Is the newest version of the plugin not compatible with older versions of UnRAID?  Just curious as to why there are three different plugins that accomplish the same task?

37 minutes ago, chutson said:

Is the newest version of the plugin not compatible with older versions of UnRAID?  Just curious as to why there are three different plugins that accomplish the same task?

I think not, becouse new version was fixed by me  for unraid 7.0, I can increase min version for plugin but I need confirmation from users that it's not working on 6.12.

The old two versions has seems not working with unraid 7.0. 

 

The author of last version seems leaved the project so I took it temporary. 

Edited by Masterwishx

icon updated in CA

On 2/27/2025 at 12:20 AM, JayBriers said:

So,  as for age_mover, I think I've managed to fix my issues by escaping the opening square bracket via: 

Thanks i will check it

On 2/26/2025 at 4:16 PM, JayBriers said:

Let me know if I can help out any more!

Maybe you know how to fix issue for @foux with more than 100 files in igone list?

Hi there. I know the icon is already changed but if you want to keep the same icon as before but have a differentiator, you could use this which I just made based on the original

ca.mover.tuning.png

Edited by dohnutt
Clarifying that I created the icon

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.