ajkis / scripts

Ajki's scripts & guides
https://ajkis.github.io/scripts/
324 stars 91 forks source link

RClone Crypt Mount vs ACD_CLI Mount File Timestamps #5

Open mrobgithub opened 7 years ago

mrobgithub commented 7 years ago

@ajkis

I know you are in the process of converting to a single solution of Rclone for mount and encryption (Crypt). I have been using Rclone Crypt for a while to upload and all my ACD content is encrypted using Rclone Crypt. However, my Plex Server is currently utilizing an ACD_CLI mount that handles the actual streaming/communication with ACD with an Rclone crypt mount layered on top for decrypting the content locally (with unions-fuse layered on top). This has been working relatively well but I would like to simplify...

Current Setup: ACD(Crypt)--->ACD_CLI Mount--->Rclone Mount(Decrypt Only)--->unions-fuse Mount--->PLEX Server
Proposed Setup: ACD(Crypt)--->Rclone Mount(Stream & Decrypt)--->unions-fuse Mount--->PLEX Server

I setup an additional Rclone mount (with crypt) directly to ACD utilizing your recommended settings:

rclone mount \
--read-only \
--allow-non-empty \
--allow-other \
--acd-templink-threshold 0 \
--checkers 16 \
--quiet \
--stats 0 \
crypt: /mnt/acdclone &

Everything appears OK when comparing the contents of this new "direct" Rclone mount with the old "indirect" Rclone mount (utilizing ACD_CLI). However, I noticed that the file stamps between the two are not the same. They seem to differ by my timezone offset (UTC -6). For example:

"Indirect" Rclone mount (utilizing ACD_CLI):
    5867220390 Jan 31 08:12 Content1.mkv

New "direct" Rclone mount:
    5867220390 Jan 31 02:12 Content1.mkv

Amazon Cloud Drive site (via browser):
    pg3in27v7k8adai3gp5qu9mfh6hjp 5.5 GB January 31 2:12 AM

Have you seen this behavior in all your research/testing? It appears on the surface that the "direct" Rclone mount time is more correct because it matches the actual time that I uploaded the file to ACD based on my timezone.

In order to move forward in my testing my next step would be to change my existing unions-fuse mount to utilize this new "direct" Rclone mount. Because of the datetime differences outlined above, I believe my Plex Server is going to be unhappy and want to do a full refresh of all this "changed" content. As you know, this is extremely slow for an entire library when the content is in ACD. Also, if I am unhappy with the results of this "direct" Rclone mount, going back will cause another full refresh. Any ideas on this? Ways to avoid this full refresh each time I switch back/forth for A vs. B testing?

ajkis commented 7 years ago

I never noticed it, however Plex will scan all the files but its not a problem since files should still be playable. The problem with Plex and full scan is if your metadata would be deleted prior. In theory you could make a script that would check rclone filestamp and update in in acd_cli node.db to match but its more then likely that acd_cli would just updated it with his values on first sync.

You could change your server timezone and suffer trough one update but at least after it would match, since acd_cli.ini, acd_client.ini, cache.ini fuse.ini from acd config seems not support the timezone ( maybe make a ticket to them to add it )