8 posts in this topic Last Reply

Recommended Posts

The docs say that the mover won't touch any files or directories that start in an '.' (dot) and are located in the root directory of the cache drive. This is what I found in my syslog this morning:

 

Jan 21 07:06:04 Tower logger: mv: cannot move `./.Tower2/Projekte/Chor/DDESRV/Source/DDEAPPS.obj' to `/mnt/user0/./.Tower2/Projekte/Chor/DDESRV/Source/DDEAPPS.obj': No such file or directory
Jan 21 07:06:04 Tower logger: `./.Tower2/Projekte/Chor/DDESRV/Source/DDESRV.C.SAV' -> `/mnt/user0/./.Tower2/Projekte/Chor/DDESRV/Source/DDESRV.C.SAV'

 

Below '.Tower2' I created directories like the 'Projekte' shown above. These directories are mount points for connections to my second machine.

 

For me it looks like an error.

 

Thanks

Harald

 

Share this post


Link to post

The docs say that the mover won't touch any files or directories that start in an '.' (dot) and are located in the root directory of the cache drive. This is what I found in my syslog this morning:

 

Jan 21 07:06:04 Tower logger: mv: cannot move `./.Tower2/Projekte/Chor/DDESRV/Source/DDEAPPS.obj' to `/mnt/user0/./.Tower2/Projekte/Chor/DDESRV/Source/DDEAPPS.obj': No such file or directory
Jan 21 07:06:04 Tower logger: `./.Tower2/Projekte/Chor/DDESRV/Source/DDESRV.C.SAV' -> `/mnt/user0/./.Tower2/Projekte/Chor/DDESRV/Source/DDESRV.C.SAV'

 

Below '.Tower2' I created directories like the 'Projekte' shown above. These directories are mount points for connections to my second machine.

 

For me it looks like an error.

 

Thanks

Harald

 

It did not move it...  ;)

 

The reason it did not was because the prior portion of the mover script that creates the target directories did not create the directory.  That portion of the script is correct, the actual "mv" is incorrect, as you discovered.

 

This was discussed in this thread, where I posted a suggested "fix"

 

Tom has not yet made any changes... but he said his head hurt...  ;)

 

If you let the errors accumulate in the syslog eventually you will run out of memory and you server will crash.  It might take  months from the syslog to grow that big to where it becomes an issue, but keep an eye on it, send Tom an e-mail pointing to this thread to remind him of the bug, and hope he can find time to fix it.

 

The fixed section of the "mover' script will look a lot like this:

(cd /mnt/cache ; find . \

  \( -type d  -regex '[.]/[^.].*'                                        -exec mkdir -p /mnt/user0/{} 2>/dev/null\; \) , \

  \( -type f  -regex '[.]/[^.][^\/]*/.*'  ! -exec fuser -s {} \;  -exec mv {} /mnt/user0/{} \; \)  \

)

Joe L.

Share this post


Link to post

Is it worthwhile to create a mover addon slackware install package to make it easier for users to update?

 

Share this post


Link to post

IMHO, this is nothing for an additional package that somebody installs. It's simply a bug. It crashed one of my machines today with over 1,9GB syslog. It should be fixed ASAP.

 

You need to know about this bug to install the package. So the amount of fixed machines is pure random. Many people become aware of a new release but not all read threads about packages.

 

Will PM Lime in a second.

 

Regards

Harald

 

Share this post


Link to post

I think if someone was to build a package to fix these two errors it would be greatly appreciated by many, and probably will be needed for several releases to come...  :-X

 

Share this post


Link to post

Fixed in next beta (4.5-beta2).

 

Note to Joe: the "-p" option to mkdir causes mkdir to not generate any output, even if target directory already exists; hence, "2>/dev/null" is not necessary.  Also, don't really need to check that first character of top level directory is not itself a '/' character because you will never the see, e.g., "./share//..." (that is, two consecutive

'/' characters).  Corrected mover script is as follows:

(cd /mnt/cache ; find . \
  \( -type d  -regex '[.]/[^.].*'                             -exec mkdir -p /mnt/user0/{} \; \) , \
  \( -type f  -regex '[.]/[^.].*/.*'  ! -exec fuser -s {} \;  -exec mv -v {} /mnt/user0/{} \; \)   \
)

Also, the '-v' option is left in because a control was added to the SMU, "Mover logging [enabled/disabled]".  If set to enabled (the default), mover will generate log entries to syslog; if set to disabled, mover will send output to /dev/null.

 

Share this post


Link to post


Copyright © 2005-2018 Lime Technology, Inc.
unRAID® is a registered trademark of Lime Technology, Inc.