RClone is overwhelming. How to make it's user experience more like that of OneDrive's

I don't have any technical issue with rclone. Everything that I tell it to do, is being done.
However, I am very new to this fantastic tool, and I am not exactly sure what can I tell it to do, because of how overwhelming it feels.

I am trying to accomplish an end-effect that feels like that of OneDrive's;
> being able to connect to the "remote" from multiple devices,
> each device has a single local "directory" (or a drive) that represents the "remote",
> changes made to the "local directory" representing the "remote", are being passively "broadcasted" to all other devices. (well I mean, if you are changing the "remote", all devices connected to it, will see the change)
> Files are being locally cached/stored for when you go offline.

for the most part, rclone mount fills the bill however, AFAIK its cache is very short-lived.
files in the cache are stored locally only for one hour and then they are deleted.

> I want to configure rclone mount to ETERNALLY store cached files on my computer in an "offline-mode" friendly way, eg once i go offline i still want to be able to read, write, modify my files (without the need to mess with cache-dir/vfs/), and once i come back online, i want rclone to pick up the difference and update my remote.

> then i want to be able to shut down my laptop, go to my desktop computer, boot it up, turn on rclone, wait few minutes for it to sync my local cache from remote, and pick up work where i left it.

Is there any way to configure rclone mount and its vfs-cache to act like i described above?

Unfortunately, no. Rclone is an online cloud remote tool so that would not meet your needs.

that's a shame. I guess I'll have to use a "real-time, bi-directional" 3rd party syncing software, preferably based on differential syncing algorithms like that of Rsync - (I am not sure if Rsync can work in real-time though + unfortunately, I can't use it because I am on windows :frowning:)

My idea is to RClone mount MyRemote: X: and tell the 3rd party syncing app to keep a "local directory" (Say D:\Data) on my computer in sync with the X: drive (the remote mounted as a drive). That should work, shouldn't it?

I am only afraid that RClone's cache might throw syncing app for a loop :confused:

Thank you very much for your response & help!

A rclone mount won't work well/at all with no network connectivity. It's meant to be online for a mount.

I am sorry, yeah that's a given.
I am just high up in my own thoughts, sorry.

I am currently writing a PowerShell script that runs in the background and can take care of managing rclone:

  • script starts with the system,

  • checks if there's a network connection,

  • if the network is available;

    • invokes rclone mount MyRemote: X: (as a separate process),
    • (to be implemented) starts 3rd party syncing software (as a separate process),
  • if the network becomes unavailable;

    • (to be implemented) Kills 3rd party syncing software,
    • kills rclone mount when the network drops.

This way, the local files I am working on (from D:/Data), are kept on my PC locally, eternally and in an "offline-friendly-way" (well they are on my local HDD, ofc they would be accessible even without the network connection).

and rclone + syncing software is being used only to store a backup/mirror on a remote and bidirectionally sync my local files with the remote.

I am only afraid of how well will RClone's caching work with 3rd pardy syncing app.

I mean the way I am going to use syncing app, the app will think that it is syncing two local directories (D:/Data and X:).

But that's not true. X: will be managed, in the background by rclone, which implies rclone's vfs and caching algorithms. aka files won't really be stored on X: they might appear to be there, but that's only their metadata.

Trying to sync the cache for rclone's mount other places and make use of it is a bad idea as it's meant to be one process to a mount and not shared anywhere else. You'd be asking for problems.

Rclone is meant to be an online tool for a mount.

You can use rclone a scheduled task rather than a mount to bisync two spots:

Bisync (rclone.org)

or

rclone sync

As I'm not sure what you want to happen.

Trying to keep an offline cache somehow for the mount moving between computers is just not a great idea.

Trying to sync the cache for rclone's mount other places and make use of it is a bad idea as it's meant to be one process to a mount and not shared anywhere else. You'd be asking for problems.

my idea was to sync D:/Data with X: (X: being the drive created by rclone mount MyRemote: X:) and leave RCLONE_CACHE_DIR alone. i know that messing with any program's inner workings is a bad idea.

I just hoped it would go like that:
> sync app stores or retrieves files on or from X:
> rclone notices changes and tries to either upload "incoming" files into MyRemote: or download requested files from MyRemote:

But I guess I am complicating things way way way too much.
The simplest solution would be to invoke rclone sync to pull or push changes depending on the need.

Or even run rclone sync in a push direction every 15 minutes through task scheduler.

Just like you've said.

I suggest using bisync (built in) or a 3rd party wrapper tool like syncrclone (full disclosure, I am the author of it. See a comparison). I used to do the push/pull thing (with rsync) and you quickly run into problems.

Let's assume you somehow manage to avoid the super easy "i forgot to push/pull or what I should be doing" mistake, you still will run into issue if you try to move or delete a file. It really is easier to use a tool designed for it.

Using my aforementioned tool, I dropped the first-party OneDrive and DropBox client. It has some pros and cons for sure but I liked the control and lack of lock in. Also, I don't ever need to care if I have to move storage. It is the same UX on my side. (I also mount it on a VPS for access on my phone)

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.