Everything seems to be working great, I would just like some input on the mount command I'm using

What is the problem you are having with rclone?

Im not having any problems just looking for some opinions.

Run the command 'rclone version' and share the full output of the command.

rclone v1.58.1

  • os/version: darwin 12.4 (64 bit)
  • os/kernel: 21.5.0 (x86_64)
  • os/type: darwin
  • os/arch: amd64
  • go/version: go1.17.9
  • go/linking: dynamic
  • go/tags: cmount

Which cloud storage system are you using? (eg Google Drive)

WebDAV

The command you were trying to run (eg rclone copy /tmp remote:tmp)

rclone mount NAS:home/ "/Volumes/M.2 External /RClone/Mounts/Home_NAS" --cache-dir "/Volumes/M.2 External /RClone/Cache/Home_NAS" --vfs-cache-mode full --vfs-write-back 1s --vfs-cache-poll-interval 1s --vfs-cache-max-size 50G --vfs-cache-max-age 720h --allow-root --volname Home_NAS --poll-interval 2s --dir-cache-time 5s

The rclone config contents with secrets removed.

[NAS]
type = webdav
url = https://MYNAS.NOPE
vendor = other
user = ME
pass = MYPASSWORDISPASSWORDDUH

A log from the command with the -vv flag

Nothing to post, everything seems fine. 

Ok so now that I filled all that out, I'm just looking for some input on my first mount using RClone. Hoping for a sanity check, and to make sure im not doing anything stupid that's going to cause unforeseen issues.

The WebDAV server im using is mine, its in my house. I am mounting the remote on my MacBook Pro which is hardwired at home half the time, and hard wired at work the other half. Very rarely do I use it anywhere else, but when I do I always end up not being able to do anything when there's no or bad internet because I keep ALL my data on my NAS, my Mac only has programs on it. I literally use my NAS as a permanent extension of my computer.

So I setup the remote config to point the the root of my webdav server, because I want to mount different directories as separate mounts on my Mac each with their own settings because they will all be used differently. Home is just the first of several mounts Im going to make.

I made a dedicated directory on my external SSD (which is permanently mounted to my Mac Book Pro, its never removed) in here as you can see I have a Dir for mounts, and a separate Dir for cache, and each mount will have their own sub Dir in here.

--vfs-cache-mode full
I'm wanting to cache in both directions so if I am offline, or im rebooting my server I can continue working and changes will sync to the remote once its back online

--vfs-write-back 1s
I want changes to sync back almost immediately as I often am editing config files and stuff for other apps on the server, so I don't want to have to wait for my changes to be uploaded.

--vfs-cache-poll-interval 1s
Again working with lots of small files that may have changes made from either end (remote or client) and I'd like those changes to propagate asap.

--vfs-cache-max-size 50G
--vfs-cache-max-age 720h
I'd like to keep things that I frequently access cached for up-to 30days, but I don't want to cache more than 50G worth of data. The reason for the 30days is so if I unexpectedly find myself offline, I can still access whatever I was working on recently.

--allow-root
I don't even know if this was necessary or not, but I own the server and all the data on it, so I figured this would come in handy on the rare occasion I need to modify a system file, or permissions. Correct me if I'm wrong here.

--volname Home_NAS
Its just nice to have quick access from my desktop even though I know the remote is also accessible from the mount directory.

--poll-interval 2s
--dir-cache-time 5s
I want changes made remotely to propagate quickly.

I really hoping RClone is my saving grace from apps like MountainDuck, WebDrive, Expandrive, etc, as I have tried them all and performance and reliability is terrible, on top of none of them offering the kind of caching control that RClone has.

hi,

might want to use the rclone log output, using -v or -vv
would see something like
INFO : webdav root '': poll-interval is not supported by this remote

one downside to most webdav servers, do not support hash checksum to verify file transfers.
tho as per docs, "Owncloud or Nextcloud" does support that.

I will double check but when I ran the -vv flag before posting this I don't recall seeing that.

I am using the WebDAV server built into my Synology and I'm not sure what back-end it uses. I think its NGINX but I cant find a solid answer.

EDIT: Nope you were right, there it is right at the top.

2022/06/25 13:19:23 INFO  : webdav root 'home': poll-interval is not supported by this remote

rclone can emulate a webdav server.
rclone serve webdav NAS:

i know that rclone serve sftp, rclone itself will calculate the checksums, not dependent on the local os support.
not sure what rclone serve webdav does.

Well damn is there anything it cant do? lol

So if I understand the suggestion here is to use rclone serve webdav to make the connection to my NAS from my MacBook, and then change the remote in my config to point to the local webdav server now running on my MacBook instead of pointing it to my NAS directly.

Or I could just spinup Nextcloud in a docker and mount the needed directories in there.

The big question is, is there a major benefit to being able to set the --poll-interval and --dir-cache-time seperately?

I imagine with both options working correctly I could set the --dir-cache-time to be something much larger like 5-10min, and set the --poll-interval to something small like 1sec. But is there a performance increase or something to be gained by doing this?

I don't mind setting up some more stuff and adjusting my setup if there is something to be gained by doing it.

--magic :wink:

just curious, why use webdav instead of samba/nfs/sftp/...

that is what i would do on my synbox, as the modtime + checksum are important.

on window os, i can use windows explorer to mount a webdav server to a drive letter.
can the macos do the equivalent?

Because I wanted it to be accessible over the internet on port 443. Mostly to not have to deal with overzealous business & public wifi firewalls.

But by all means if there is a faster/better protocol that I could use I’m all ears.

Yup sure can. If I connect to the WebDAV server directly from within Finder then it shows up as a mounted network drive.

When I connect using RClone it shows up as a FUSE drive. Not sure if there’s any technical difference between the two though.

for what it is worth,

on my synbox, i use tailscale/openvpn, so the webdav server would not be exposed to internet.

perhaps i do not fully understand your case but what i would is, use native tools from each machine.
--- use vpn
--- on the synbox, created a shared folder, that would support smb/samba/NFS/AFP
--- on the macos, map to that share.

I ran that way for several years, it wasn't terrible but it was a hassle sometimes. Especially on my iPhone where Tailscale didn't want to automatically reconnect when switching between WiFi and LTE. Plus, any time I was at a friends, or work and I forgot my Laptop at home now I have no access to my files without installing VPN software on someone else's device. With how I use it, it was just more practical this way.

But sounds like I'm off to setup Nextcloud. Thank you for the tip because I didn't initially catch that error.

glad i asked, good to know.

when you get it all working, you can post about it here.

Ok, so it took me a few days because I wanted to make sure I setup Nextcloud correctly rather than just throwing it together and regretting it later.

So first thing I did was edit my config to change the provider from regular WebDAV to Nextcloud, I made the remote mount points the same so all I had to do was re-run the same mount command as before.

It does work just fine, and the share mounts, however I am still seeing the below in my LOG.

INFO  : webdav root 'Share': poll-interval is not supported by this remote

that is expected and applies most backends.

some backends, such as gdrive, support polling.

for example,
let's say that in gdrive a new file is added.
gdrive sends a signal to rclone, then rclone adds the file to the vfs dir cache.

But isnt NextCloud supposed to support it?

what makes you think that?

for this remote

[nextcloud]
type = webdav
url = https://redacted/webdav/app/index.php
vendor = nextcloud
user = redacted
pass = redacted

notice that ChangeNotify is false

rclone backend features nextcloud:
{
        "Name": "nextcloud",
        "Root": "",
        "String": "webdav root ''",
        "Precision": 1000000000,
        "Hashes": [
                "sha1"
        ],
        "Features": {
                "About": true,
                "BucketBased": false,
                "BucketBasedRootOK": false,
                "CanHaveEmptyDirectories": true,
                "CaseInsensitive": false,
                "ChangeNotify": false,

I could of sworn I read it somewhere but I don't recall where...

Are there any "self-hostable" backends that do support it? That's a particularly important feature for me. I suppose I could always just set the Dir-cache-time really low, but I imagine there will be a performance impact if I do.

I have searched the Wiki and the forums and haven't found a list of backends that actually support that feature. I'm perfectly happy to spin up a docker for whatever backend will give me the best performance and the ability to use that feature.

the only backends that i know about are dropbox and gdrive.

Ah, ok. Well in that case is there any major impact by just setting Dir-cache-time to something really low like 5s ?

cannot answer that, know nothing about your use-case.

perhaps do a test.

fwiw, start a new topic, maybe another fellow rcloner has the answer.

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