Combine+mount+Windows+s3 error

What is the problem you are having with rclone?

I get an error when mounting a combination of s3 remotes

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

rclone v1.70.1
- os/version: Microsoft Windows 11 Pro 24H2 24H2 (64 bit)
- os/kernel: 10.0.26100.4349 (x86_64)
- os/type: windows
- os/arch: amd64
- go/version: go1.24.4
- go/linking: static
- go/tags: cmount

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

AWS S3

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

rclone mount --s3-env-auth ":combine,upstreams='foo=:s3:':" s:

Please run 'rclone config redacted' and share the full output. If you get command not found, please make sure to update rclone.

2025/06/19 19:52:26 NOTICE: Config file "C:\\Users\\bmartinez\\AppData\\Roaming\\rclone\\rclone.conf" not found - using defaults
; empty config
### Double check the config for sensitive info before posting publicly

A log from the command that you were trying to run with the -vv flag

2025/06/19 19:53:43 DEBUG : rclone: Version "v1.70.1" starting with parameters ["rclone" "mount" "--s3-env-auth" ":combine,upstreams='foo=:s3:':" "s:" "-vv"]
2025/06/19 19:53:43 DEBUG : Creating backend with remote ":combine,upstreams='foo=:s3:':"
2025/06/19 19:53:43 NOTICE: Config file "C:\\Users\\bmartinez\\AppData\\Roaming\\rclone\\rclone.conf" not found - using defaults
2025/06/19 19:53:43 DEBUG : :combine: detected overridden config - adding "{WxK4j}" suffix to name
2025/06/19 19:53:43 DEBUG : Creating backend with remote ":s3:"
2025/06/19 19:53:43 DEBUG : :s3: detected overridden config - adding "{YTu53}" suffix to name
2025/06/19 19:53:43 NOTICE: s3: s3 provider "" not known - please set correctly
2025/06/19 19:53:43 DEBUG : fs cache: renaming cache item ":s3:" to be canonical ":s3{YTu53}:"
2025/06/19 19:53:43 DEBUG : fs cache: renaming cache item ":combine,upstreams='foo=:s3:':" to be canonical ":combine{WxK4j}:"
2025/06/19 19:53:43 INFO  : combine root '': poll-interval is not supported by this remote
2025/06/19 19:53:43 DEBUG : Network mode mounting is disabled
2025/06/19 19:53:43 DEBUG : Mounting on "s:" ("combine{WxK4j}")
2025/06/19 19:53:43 DEBUG : combine root '': Mounting with options: ["-o" "attr_timeout=1" "-o" "uid=-1" "-o" "gid=-1" "--FileSystemName=rclone" "-o" "volname=combine{WxK4j}"]
2025/06/19 19:53:43 DEBUG : combine root '': Init:
2025/06/19 19:53:43 DEBUG : combine root '': >Init:
2025/06/19 19:53:43 DEBUG : /: Statfs:
2025/06/19 19:53:43 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
2025/06/19 19:53:43 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2025/06/19 19:53:43 DEBUG : /: >Getattr: errc=0
2025/06/19 19:53:43 DEBUG : /: Readlink:
2025/06/19 19:53:43 ERROR : symlinks not supported without the --links flag: /
2025/06/19 19:53:43 DEBUG : /: >Readlink: errc=-40, linkPath=""
2025/06/19 19:53:43 DEBUG : /: Getxattr: name="non-existant-a11ec902d22f4ec49003af15282d3b00"
2025/06/19 19:53:43 DEBUG : /: >Getxattr: errc=-40, value=""
The service rclone has been started.
2025/06/19 19:53:43 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2025/06/19 19:53:43 DEBUG : /: >Getattr: errc=0
2025/06/19 19:53:43 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2025/06/19 19:53:43 DEBUG : /: >Getattr: errc=0
2025/06/19 19:53:43 DEBUG : /: Opendir:
2025/06/19 19:53:43 DEBUG : /: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2025/06/19 19:53:43 DEBUG : /: >OpenFile: fd=/ (r), err=<nil>
2025/06/19 19:53:43 DEBUG : /: >Opendir: errc=0, fh=0x0
2025/06/19 19:53:43 DEBUG : /: Statfs:
2025/06/19 19:53:43 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
2025/06/19 19:53:43 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2025/06/19 19:53:43 DEBUG : /: >Getattr: errc=0
2025/06/19 19:53:43 DEBUG : /: Releasedir: fh=0x0
2025/06/19 19:53:43 DEBUG : /: >Releasedir: errc=0
2025/06/19 19:53:43 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2025/06/19 19:53:43 DEBUG : /: >Getattr: errc=0
2025/06/19 19:53:43 DEBUG : /: Opendir:
2025/06/19 19:53:43 DEBUG : /: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2025/06/19 19:53:43 DEBUG : /: >OpenFile: fd=/ (r), err=<nil>
2025/06/19 19:53:43 DEBUG : /: >Opendir: errc=0, fh=0x0
2025/06/19 19:53:43 DEBUG : /: Releasedir: fh=0x0
2025/06/19 19:53:43 DEBUG : /: >Releasedir: errc=0
2025/06/19 19:53:43 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2025/06/19 19:53:43 DEBUG : /: >Getattr: errc=0
2025/06/19 19:53:43 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2025/06/19 19:53:43 DEBUG : /: >Getattr: errc=0
2025/06/19 19:53:43 DEBUG : /: Opendir:
2025/06/19 19:53:43 DEBUG : /: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2025/06/19 19:53:43 DEBUG : /: >OpenFile: fd=/ (r), err=<nil>
2025/06/19 19:53:43 DEBUG : /: >Opendir: errc=0, fh=0x0
2025/06/19 19:53:43 DEBUG : /: Releasedir: fh=0x0
2025/06/19 19:53:43 DEBUG : /: >Releasedir: errc=0
2025/06/19 19:53:49 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2025/06/19 19:53:49 DEBUG : /: >Getattr: errc=0
2025/06/19 19:53:49 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2025/06/19 19:53:49 DEBUG : /: >Getattr: errc=0
2025/06/19 19:53:49 DEBUG : /: Opendir:
2025/06/19 19:53:49 DEBUG : /: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2025/06/19 19:53:49 DEBUG : /: >OpenFile: fd=/ (r), err=<nil>
2025/06/19 19:53:49 DEBUG : /: >Opendir: errc=0, fh=0x0
2025/06/19 19:53:49 DEBUG : /: Releasedir: fh=0x0
2025/06/19 19:53:49 DEBUG : /: >Releasedir: errc=0
2025/06/19 19:53:49 DEBUG : /foo: Getattr: fh=0xFFFFFFFFFFFFFFFF
2025/06/19 19:53:49 DEBUG : /foo: >Getattr: errc=0
2025/06/19 19:53:49 DEBUG : /foo: Getattr: fh=0xFFFFFFFFFFFFFFFF
2025/06/19 19:53:49 DEBUG : /foo: >Getattr: errc=0
2025/06/19 19:53:49 DEBUG : /foo: Opendir:
2025/06/19 19:53:49 DEBUG : /foo: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2025/06/19 19:53:49 DEBUG : /foo: >OpenFile: fd=foo/ (r), err=<nil>
2025/06/19 19:53:49 DEBUG : /foo: >Opendir: errc=0, fh=0x0
2025/06/19 19:53:49 DEBUG : /foo: Releasedir: fh=0x0
2025/06/19 19:53:49 DEBUG : /foo: >Releasedir: errc=0
2025/06/19 19:53:49 DEBUG : /foo: Getattr: fh=0xFFFFFFFFFFFFFFFF
2025/06/19 19:53:49 DEBUG : /foo: >Getattr: errc=0
2025/06/19 19:53:49 DEBUG : /foo: Getattr: fh=0xFFFFFFFFFFFFFFFF
2025/06/19 19:53:49 DEBUG : /foo: >Getattr: errc=0
2025/06/19 19:53:49 DEBUG : /foo: Opendir:
2025/06/19 19:53:49 DEBUG : /foo: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2025/06/19 19:53:49 DEBUG : /foo: >OpenFile: fd=foo/ (r), err=<nil>
2025/06/19 19:53:49 DEBUG : /foo: >Opendir: errc=0, fh=0x0
2025/06/19 19:53:49 DEBUG : /foo: Releasedir: fh=0x0
2025/06/19 19:53:49 DEBUG : /foo: >Releasedir: errc=0
2025/06/19 19:53:49 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2025/06/19 19:53:49 DEBUG : /: >Getattr: errc=0
2025/06/19 19:53:49 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2025/06/19 19:53:49 DEBUG : /: >Getattr: errc=0
2025/06/19 19:53:49 DEBUG : /: Opendir:
2025/06/19 19:53:49 DEBUG : /: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2025/06/19 19:53:49 DEBUG : /: >OpenFile: fd=/ (r), err=<nil>
2025/06/19 19:53:49 DEBUG : /: >Opendir: errc=0, fh=0x0
2025/06/19 19:53:49 DEBUG : /: Statfs:
2025/06/19 19:53:49 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
2025/06/19 19:53:49 DEBUG : /: Releasedir: fh=0x0
2025/06/19 19:53:49 DEBUG : /: >Releasedir: errc=0
2025/06/19 19:53:49 DEBUG : /foo: Getattr: fh=0xFFFFFFFFFFFFFFFF
2025/06/19 19:53:49 DEBUG : /foo: >Getattr: errc=0
2025/06/19 19:53:49 DEBUG : /foo: Getattr: fh=0xFFFFFFFFFFFFFFFF
2025/06/19 19:53:49 DEBUG : /foo: >Getattr: errc=0
2025/06/19 19:53:49 DEBUG : /foo: Opendir:
2025/06/19 19:53:49 DEBUG : /foo: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2025/06/19 19:53:49 DEBUG : /foo: >OpenFile: fd=foo/ (r), err=<nil>
2025/06/19 19:53:49 DEBUG : /foo: >Opendir: errc=0, fh=0x0
2025/06/19 19:53:49 DEBUG : /foo: Readdir: ofst=0, fh=0x0
2025/06/19 19:53:49 DEBUG : foo: Dir.ReadDirAll error: operation error S3: ListObjects, https response error StatusCode: 403, RequestID: TQE7VHMFA76MVEFJ, HostID: H3Tu8I5BoGVNogfhXzqAy40a8usbJA619wtkqrMnIh28YxAU6OSM33oGAob6XYjhjQD/HHwDo0m0LgALC1GJrjGS00YTAxLH, api error AccessDenied: Access Denied
2025/06/19 19:53:49 ERROR : IO error: operation error S3: ListObjects, https response error StatusCode: 403, RequestID: TQE7VHMFA76MVEFJ, HostID: H3Tu8I5BoGVNogfhXzqAy40a8usbJA619wtkqrMnIh28YxAU6OSM33oGAob6XYjhjQD/HHwDo0m0LgALC1GJrjGS00YTAxLH, api error AccessDenied: Access Denied
2025/06/19 19:53:49 DEBUG : /foo: >Readdir: items=-1, errc=-5
2025/06/19 19:53:49 DEBUG : /foo: Releasedir: fh=0x0
2025/06/19 19:53:49 DEBUG : /foo: >Releasedir: errc=0
The service rclone has been stopped.
2025/06/19 19:53:53 DEBUG : combine root '': Destroy:
2025/06/19 19:53:53 DEBUG : combine root '': >Destroy:
2025/06/19 19:53:53 DEBUG : Not calling host.Unmount as mount already Destroyed
2025/06/19 19:53:53 DEBUG : Unmounted successfully
2025/06/19 19:53:53 ERROR : s:: Unmounted rclone mount
2025/06/19 19:53:53 DEBUG : rclone: Version "v1.70.1" finishing with parameters ["rclone" "mount" "--s3-env-auth" ":combine,upstreams='foo=:s3:':" "s:" "-vv"]

At 19:53:49 I ran dir s:\foo in another console and got File Not Found. Fiddler shows rclone doing GET /foo?delimiter=%2F&max-keys=1000&prefix=. It's trying to list foo on aws, while it's just a local notion. It should be doing ListBuckets, not ListObjects.

Removing the mount with rclone ls --s3-env-auth ":combine,upstreams='foo=:s3:':"
, removing s3 with rclone mount ":combine,upstreams='foo=local_dir':" s:
, and removing combine with rclone mount --s3-env-auth :s3: s:
all work correctly.