Mounting rclone union made from local folders on windows cannot get free space

What is the problem you are having with rclone?

When I mount a union storage system using two local folders on Windows as upstreams (with all its config options set to default values), I always get:

2022/03/29 09:13:20 ERROR : union root '//': Statfs failed: this usage field is not supported

and I don't why, since local folders should have their free space available.

How can I make rclone aware of the free space available to each upstream (local folder)?

Any help would be greatly appreciated.

Thanks.

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

rclone v1.58.0
- os/version: Microsoft Windows 10 Pro 1909 (64 bit)
- os/kernel: 10.0.18363.836 (x86_64)
- os/type: windows
- os/arch: amd64
- go/version: go1.17.8
- go/linking: dynamic
- go/tags: cmount

I think it's worth mentioning I'm using WinFSP v1.10.22006 to be able to mount a rclone remote, since I don't know who to blame for this issue yet.

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

A union storage system using two local folders on Windows as upstreams (all its config options options set to default values).

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

rclone mount union-test1:// u: --vfs-cache-mode full

The rclone config contents with secrets removed.

[union-test1]
type = union
upstreams = d:/test/union/dir1 d:/test/union/dir2 

A log from the command with the -vv flag

2022/03/29 09:16:45 DEBUG : rclone: Version "v1.58.0" starting with parameters ["rclone" "mount" "union-test1://" "u:" "--vfs-cache-mode" "full" "-vv"]
2022/03/29 09:16:45 DEBUG : Creating backend with remote "union-test1://"
2022/03/29 09:16:45 DEBUG : Using config file from "C:\\Users\\username\\.config\\rclone\\rclone.conf"
2022/03/29 09:16:45 DEBUG : Creating backend with remote "d:/test/union/dir3"
2022/03/29 09:16:45 DEBUG : Creating backend with remote "d:/test/union/dir1"
2022/03/29 09:16:45 DEBUG : Creating backend with remote "d:/test/union/dir2"
2022/03/29 09:16:45 DEBUG : fs cache: renaming cache item "d:/test/union/dir3" to be canonical "//?/d:/test/union/dir3"
2022/03/29 09:16:45 DEBUG : fs cache: switching user supplied name "d:/test/union/dir3" for canonical name "//?/d:/test/union/dir3"
2022/03/29 09:16:45 DEBUG : fs cache: renaming cache item "d:/test/union/dir1" to be canonical "//?/d:/test/union/dir1"
2022/03/29 09:16:45 DEBUG : fs cache: switching user supplied name "d:/test/union/dir1" for canonical name "//?/d:/test/union/dir1"
2022/03/29 09:16:45 DEBUG : fs cache: renaming cache item "d:/test/union/dir2" to be canonical "//?/d:/test/union/dir2"
2022/03/29 09:16:45 DEBUG : fs cache: switching user supplied name "d:/test/union/dir2" for canonical name "//?/d:/test/union/dir2"
2022/03/29 09:16:45 DEBUG : union root '//': actionPolicy = *policy.EpAll, createPolicy = *policy.EpMfs, searchPolicy = *policy.FF
2022/03/29 09:16:45 INFO  : union root '//': poll-interval is not supported by this remote
2022/03/29 09:16:45 DEBUG : vfs cache: root is "C:\\Users\\username\\AppData\\Local\\rclone"
2022/03/29 09:16:45 DEBUG : vfs cache: data root is "\\\\?\\C:\\Users\\username\\AppData\\Local\\rclone\\vfs\\union-test1"
2022/03/29 09:16:45 DEBUG : vfs cache: metadata root is "\\\\?\\C:\\Users\\username\\AppData\\Local\\rclone\\vfsMeta\\union-test1"
2022/03/29 09:16:45 DEBUG : Creating backend with remote "C:/Users/username/AppData/Local/rclone/vfs/union-test1///"
2022/03/29 09:16:45 DEBUG : fs cache: renaming cache item "C:/Users/username/AppData/Local/rclone/vfs/union-test1///" to be canonical "//?/C:/Users/username/AppData/Local/rclone/vfs/union-test1///"
2022/03/29 09:16:45 DEBUG : Creating backend with remote "C:/Users/username/AppData/Local/rclone/vfsMeta/union-test1///"
2022/03/29 09:16:45 DEBUG : fs cache: renaming cache item "C:/Users/username/AppData/Local/rclone/vfsMeta/union-test1///" to be canonical "//?/C:/Users/username/AppData/Local/rclone/vfsMeta/union-test1///"
2022/03/29 09:16:45 DEBUG : Network mode mounting is disabled
2022/03/29 09:16:45 DEBUG : Mounting on "u:" ("union-test1")
2022/03/29 09:16:45 INFO  : vfs cache: cleaned: objects 0 (was 0) in use 0, to upload 0, uploading 0, total size 0 (was 0)
2022/03/29 09:16:45 DEBUG : union root '//': Mounting with options: ["-o" "attr_timeout=1" "-o" "uid=-1" "-o" "gid=-1" "--FileSystemName=rclone" "-o" "volname=union-test1"]
2022/03/29 09:16:45 DEBUG : union root '//': Init:
2022/03/29 09:16:45 DEBUG : union root '//': >Init:
2022/03/29 09:16:45 DEBUG : /: Statfs:
2022/03/29 09:16:45 ERROR : union root '//': Statfs failed: this usage field is not supported
2022/03/29 09:16:45 DEBUG : /: >Statfs: stat={Bsize:4096 Frsize:4096 Blocks:8796093022207 Bfree:8796093022207 Bavail:8796093022207 Files:1000000000 Ffree:1000000000 Favail:0 Fsid:0 Flag:0 Namemax:255}, errc=0
2022/03/29 09:16:45 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2022/03/29 09:16:45 DEBUG : /: >Getattr: errc=0
2022/03/29 09:16:45 DEBUG : /: Readlink:
2022/03/29 09:16:45 DEBUG : /: >Readlink: linkPath="", errc=-40
The service rclone has been started.
2022/03/29 09:16:45 DEBUG : /: Statfs:
2022/03/29 09:16:45 DEBUG : /: >Statfs: stat={Bsize:4096 Frsize:4096 Blocks:274877906944 Bfree:274877906944 Bavail:274877906944 Files:1000000000 Ffree:1000000000 Favail:0 Fsid:0 Flag:0 Namemax:255}, errc=0
2022/03/29 09:16:45 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2022/03/29 09:16:45 DEBUG : /: >Getattr: errc=0
2022/03/29 09:16:45 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2022/03/29 09:16:45 DEBUG : /: >Getattr: errc=0
2022/03/29 09:16:45 DEBUG : /: Opendir:
2022/03/29 09:16:45 DEBUG : /: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2022/03/29 09:16:45 DEBUG : /: >OpenFile: fd=/ (r), err=<nil>
2022/03/29 09:16:45 DEBUG : /: >Opendir: errc=0, fh=0x0
2022/03/29 09:16:45 DEBUG : /: Releasedir: fh=0x0
2022/03/29 09:16:45 DEBUG : /: >Releasedir: errc=0
2022/03/29 09:16:45 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2022/03/29 09:16:45 DEBUG : /: >Getattr: errc=0
2022/03/29 09:16:45 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2022/03/29 09:16:45 DEBUG : /: >Getattr: errc=0
2022/03/29 09:16:45 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2022/03/29 09:16:45 DEBUG : /: >Getattr: errc=0
2022/03/29 09:16:45 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2022/03/29 09:16:45 DEBUG : /: >Getattr: errc=0
2022/03/29 09:16:45 DEBUG : /: Opendir:
2022/03/29 09:16:45 DEBUG : /: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2022/03/29 09:16:45 DEBUG : /: >OpenFile: fd=/ (r), err=<nil>
2022/03/29 09:16:45 DEBUG : /: Opendir:
2022/03/29 09:16:45 DEBUG : /: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2022/03/29 09:16:45 DEBUG : /: >OpenFile: fd=/ (r), err=<nil>
2022/03/29 09:16:45 DEBUG : /: >Opendir: errc=0, fh=0x0
2022/03/29 09:16:45 DEBUG : /: >Opendir: errc=0, fh=0x1
2022/03/29 09:16:45 DEBUG : /: Releasedir: fh=0x0
2022/03/29 09:16:45 DEBUG : /: >Releasedir: errc=0
2022/03/29 09:16:45 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2022/03/29 09:16:45 DEBUG : /: >Getattr: errc=0
2022/03/29 09:16:45 DEBUG : /: Releasedir: fh=0x1
2022/03/29 09:16:45 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2022/03/29 09:16:45 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2022/03/29 09:16:45 DEBUG : /: >Getattr: errc=0
2022/03/29 09:16:45 DEBUG : /: >Releasedir: errc=0
2022/03/29 09:16:45 DEBUG : /: >Getattr: errc=0
2022/03/29 09:16:45 DEBUG : /: Opendir:
2022/03/29 09:16:45 DEBUG : /: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2022/03/29 09:16:45 DEBUG : /: >OpenFile: fd=/ (r), err=<nil>
2022/03/29 09:16:45 DEBUG : /: >Opendir: errc=0, fh=0x0
2022/03/29 09:16:45 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2022/03/29 09:16:45 DEBUG : /: >Getattr: errc=0
2022/03/29 09:16:45 DEBUG : /: Releasedir: fh=0x0
2022/03/29 09:16:45 DEBUG : /: Opendir:
2022/03/29 09:16:45 DEBUG : /: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2022/03/29 09:16:45 DEBUG : /: >OpenFile: fd=/ (r), err=<nil>
2022/03/29 09:16:45 DEBUG : /: >Opendir: errc=0, fh=0x0
2022/03/29 09:16:45 DEBUG : /: >Releasedir: errc=0
2022/03/29 09:16:45 DEBUG : /: Releasedir: fh=0x0
2022/03/29 09:16:45 DEBUG : /: >Releasedir: errc=0
2022/03/29 09:16:45 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2022/03/29 09:16:45 DEBUG : /: >Getattr: errc=0
2022/03/29 09:16:45 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2022/03/29 09:16:45 DEBUG : /: >Getattr: errc=0
2022/03/29 09:16:45 DEBUG : /: Opendir:
2022/03/29 09:16:45 DEBUG : /: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2022/03/29 09:16:45 DEBUG : /: >OpenFile: fd=/ (r), err=<nil>
2022/03/29 09:16:45 DEBUG : /: >Opendir: errc=0, fh=0x0
2022/03/29 09:16:45 DEBUG : /: Releasedir: fh=0x0
2022/03/29 09:16:45 DEBUG : /: >Releasedir: errc=0
2022/03/29 09:16:45 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2022/03/29 09:16:45 DEBUG : /: >Getattr: errc=0
2022/03/29 09:16:45 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2022/03/29 09:16:45 DEBUG : /: >Getattr: errc=0
2022/03/29 09:16:45 DEBUG : /: Opendir:
2022/03/29 09:16:45 DEBUG : /: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2022/03/29 09:16:45 DEBUG : /: >OpenFile: fd=/ (r), err=<nil>
2022/03/29 09:16:45 DEBUG : /: >Opendir: errc=0, fh=0x0
2022/03/29 09:16:45 DEBUG : /: Releasedir: fh=0x0
2022/03/29 09:16:45 DEBUG : /: >Releasedir: errc=0
2022/03/29 09:16:45 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2022/03/29 09:16:45 DEBUG : /: >Getattr: errc=0
2022/03/29 09:16:45 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2022/03/29 09:16:45 DEBUG : /: >Getattr: errc=0
2022/03/29 09:16:45 DEBUG : /: Opendir:
2022/03/29 09:16:45 DEBUG : /: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2022/03/29 09:16:45 DEBUG : /: >OpenFile: fd=/ (r), err=<nil>
2022/03/29 09:16:45 DEBUG : /: >Opendir: errc=0, fh=0x0
2022/03/29 09:16:45 DEBUG : /: Releasedir: fh=0x0
2022/03/29 09:16:45 DEBUG : /: >Releasedir: errc=0

Try this - no need for the //

rclone mount union-test1: u: --vfs-cache-mode full

Hi,

Thank you for your quick response. Unfortunately, if I type

rclone mount union-test1: u: --vfs-cache-mode full

then I get the same kind of error message:

2022/03/29 14:19:48 ERROR : union root '': Statfs failed: this usage field is not supported

What does

rclone about d:/test/union/dir1

and

rclone about d:/test/union/dir2 

say? Do they work?

How about

rclone about union-test1:

Well, actually the first two seemed to work, while the third didn't:

>rclone about d:/test/union/dir1
Total:   850.959 GiB
Used:    791.608 GiB
Free:    59.351 GiB

>rclone about d:/test/union/dir2
Total:   850.959 GiB
Used:    791.608 GiB
Free:    59.351 GiB

>rclone about union-test1:
2022/03/29 20:08:09 Failed to about: About call failed: this usage field is not supported

I also tried this one:

>rclone about union-test1://
2022/03/29 20:08:15 Failed to about: About call failed: this usage field is not supported

I should mention that I could use the mounted volume u:, so I could copy files from and to this volume, I was able to delete files, etc.

However, I've decided to reboot my computer, and... now everything seems to work just like magic!

Now, if I type the initial mount command rclone starts without error or warnings:

>rclone mount union-test1: u: --vfs-cache-mode full
The service rclone has been started.

And the third problematic command also works properly:

>rclone about union-test1:
Total:   1.662 TiB
Used:    1.546 TiB
Free:    118.701 GiB

Thank you very much for your help and patience.

OK that is super weird!

I'm just going to pretend that it was working all a long and not attempt to figure out why as I've opened too many cans of worms recently :wink:

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