Rclone mount with Fuse-T on mac can't read in mount point

What is the problem you are having with rclone?

Installed Rclone and Fuse-T as per rclone mount mount is working as I can see "Teamdrive Media Books" in locations under finder and if I click into it I can see the GDrive content. However, when I go to the folder I mounted to I can not ls
% ls
ls: .: Operation not permitted

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

rclone v1.62.2

  • os/version: darwin 13.3 (64 bit)

  • os/kernel: 22.4.0 (arm64)

  • os/type: darwin

  • os/arch: arm64 (ARMv8 compatible)

  • go/version: go1.20.2

  • go/linking: dynamic

  • go/tags: cmount

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

Google Shared Drive is where I'm mounting from

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

rclone mount -o modules=iconv,from_code=UTF-8,to_code=UTF-8 --vfs-cache-mode=full teamdrive:/Media/Books /users/giddion/calibre_library

The rclone config contents with secrets removed.

[teamdrive]
type = drive
client_id = 827289004945-6akc8ndf49l1pbms6p6gt8669p2on4qf.apps.googleusercontent.com
scope = drive
token = 
{"access_token":"***","token_type":"Bearer","refresh_token":"***"}
team_drive = 0AElM2YjHYs4UUk9PVA
service_account_file = /opt/sa-json/media-automation-sa-01.json
root_folder_id =

A log from the command with the -vv flag

2023/04/09 10:26:35 DEBUG : rclone: Version "v1.62.2" starting with parameters ["rclone" "mount" "-o" "modules=iconv,from_code=UTF-8,to_code=UTF-8" "--vfs-cache-mode=full" "-vv" "teamdrive:/Media/Books" "/users/giddion/calibre_library"]
2023/04/09 10:26:35 DEBUG : Creating backend with remote "teamdrive:/Media/Books"
2023/04/09 10:26:35 DEBUG : Using config file from "/Users/giddion/.config/rclone/rclone.conf"
2023/04/09 10:26:36 DEBUG : fs cache: renaming cache item "teamdrive:/Media/Books" to be canonical "teamdrive:Media/Books"
2023/04/09 10:26:36 DEBUG : vfs cache: root is "/Users/giddion/Library/Caches/rclone"
2023/04/09 10:26:36 DEBUG : vfs cache: data root is "/Users/giddion/Library/Caches/rclone/vfs/teamdrive/Media/Books"
2023/04/09 10:26:36 DEBUG : vfs cache: metadata root is "/Users/giddion/Library/Caches/rclone/vfsMeta/teamdrive/Media/Books"
2023/04/09 10:26:36 DEBUG : Creating backend with remote "/Users/giddion/Library/Caches/rclone/vfs/teamdrive/Media/Books"
2023/04/09 10:26:36 DEBUG : Creating backend with remote "/Users/giddion/Library/Caches/rclone/vfsMeta/teamdrive/Media/Books"
2023/04/09 10:26:36 DEBUG : vfs cache RemoveNotInUse (maxAge=3600000000000, emptyOnly=false): item .DS_Store not removed, freed 0 bytes
2023/04/09 10:26:36 INFO  : vfs cache: cleaned: objects 1 (was 1) in use 0, to upload 0, uploading 0, total size 6.004Ki (was 6.004Ki)
2023/04/09 10:26:36 DEBUG : Mounting on "/users/giddion/calibre_library" ("teamdrive Media Books")
2023/04/09 10:26:36 DEBUG : Google drive root 'Media/Books': Mounting with options: ["-o" "attr_timeout=1" "-o" "fsname=teamdrive:Media/Books" "-o" "subtype=rclone" "-o" "max_readahead=131072" "-o" "atomic_o_trunc" "-o" "daemon_timeout=600" "-o" "volname=teamdrive Media Books" "-o" "noappledouble" "-o" "modules=iconv,from_code=UTF-8,to_code=UTF-8"]
2023/04/09 10:26:36 DEBUG : Google drive root 'Media/Books': Init: 
2023/04/09 10:26:36 DEBUG : Google drive root 'Media/Books': >Init: 
2023/04/09 10:26:36 DEBUG : /: Statfs: 
2023/04/09 10:26:36 DEBUG : Google drive root 'Media/Books': read info from Shared Drive "MediaBase"
2023/04/09 10:26:36 DEBUG : /: >Statfs: stat={Bsize:4096 Frsize:4096 Blocks:4294967295 Bfree:4294967295 Bavail:4294967295 Files:1000000000 Ffree:1000000000 Favail:0 Fsid:0 Flag:0 Namemax:255}, errc=0
2023/04/09 10:26:36 DEBUG : /: Getattr: fh=0xFFFFFFFFFFFFFFFF
2023/04/09 10:26:36 DEBUG : /: >Getattr: errc=0
2023/04/09 10:26:36 DEBUG : /: Statfs: 
2023/04/09 10:26:36 DEBUG : /: >Statfs: stat={Bsize:4096 Frsize:4096 Blocks:4294967295 Bfree:4294967295 Bavail:4294967295 Files:1000000000 Ffree:1000000000 Favail:0 Fsid:0 Flag:0 Namemax:255}, errc=0
2023/04/09 10:26:36 DEBUG : /: Statfs: 
2023/04/09 10:26:36 DEBUG : /: >Statfs: stat={Bsize:4096 Frsize:4096 Blocks:4294967295 Bfree:4294967295 Bavail:4294967295 Files:1000000000 Ffree:1000000000 Favail:0 Fsid:0 Flag:0 Namemax:255}, errc=0
2023/04/09 10:26:36 DEBUG : /: Statfs: 
2023/04/09 10:26:36 DEBUG : /: >Statfs: stat={Bsize:4096 Frsize:4096 Blocks:4294967295 Bfree:4294967295 Bavail:4294967295 Files:1000000000 Ffree:1000000000 Favail:0 Fsid:0 Flag:0 Namemax:255}, errc=0
2023/04/09 10:26:36 DEBUG : /: Statfs: 
2023/04/09 10:26:36 DEBUG : /: >Statfs: stat={Bsize:4096 Frsize:4096 Blocks:4294967295 Bfree:4294967295 Bavail:4294967295 Files:1000000000 Ffree:1000000000 Favail:0 Fsid:0 Flag:0 Namemax:255}, errc=0
2023/04/09 10:26:36 DEBUG : /: Listxattr: fill=0x1016e9c60
2023/04/09 10:26:36 DEBUG : /: >Listxattr: errc=-78
2023/04/09 10:26:36 DEBUG : /: Statfs: 
2023/04/09 10:26:36 DEBUG : /: >Statfs: stat={Bsize:4096 Frsize:4096 Blocks:4294967295 Bfree:4294967295 Bavail:4294967295 Files:1000000000 Ffree:1000000000 Favail:0 Fsid:0 Flag:0 Namemax:255}, errc=0
2023/04/09 10:26:36 DEBUG : /: Statfs: 
2023/04/09 10:26:36 DEBUG : /: >Statfs: stat={Bsize:4096 Frsize:4096 Blocks:4294967295 Bfree:4294967295 Bavail:4294967295 Files:1000000000 Ffree:1000000000 Favail:0 Fsid:0 Flag:0 Namemax:255}, errc=0
2023/04/09 10:26:36 DEBUG : /: Statfs: 
2023/04/09 10:26:36 DEBUG : /: >Statfs: stat={Bsize:4096 Frsize:4096 Blocks:4294967295 Bfree:4294967295 Bavail:4294967295 Files:1000000000 Ffree:1000000000 Favail:0 Fsid:0 Flag:0 Namemax:255}, errc=0
2023/04/09 10:26:36 DEBUG : /: Listxattr: fill=0x1016e9c60
2023/04/09 10:26:36 DEBUG : /: >Listxattr: errc=-78
2023/04/09 10:26:36 DEBUG : /: Statfs: 
2023/04/09 10:26:36 DEBUG : /: >Statfs: stat={Bsize:4096 Frsize:4096 Blocks:4294967295 Bfree:4294967295 Bavail:4294967295 Files:1000000000 Ffree:1000000000 Favail:0 Fsid:0 Flag:0 Namemax:255}, errc=0
2023/04/09 10:26:36 DEBUG : /.hidden: Getattr: fh=0xFFFFFFFFFFFFFFFF
2023/04/09 10:26:38 DEBUG : /.hidden: >Getattr: errc=-2
2023/04/09 10:26:38 DEBUG : /: Statfs: 
2023/04/09 10:26:38 DEBUG : /: >Statfs: stat={Bsize:4096 Frsize:4096 Blocks:4294967295 Bfree:4294967295 Bavail:4294967295 Files:1000000000 Ffree:1000000000 Favail:0 Fsid:0 Flag:0 Namemax:255}, errc=0
2023/04/09 10:26:38 DEBUG : /.DS_Store: Getattr: fh=0xFFFFFFFFFFFFFFFF
2023/04/09 10:26:38 DEBUG : /.DS_Store: >Getattr: errc=0
2023/04/09 10:26:38 DEBUG : /: Listxattr: fill=0x1016e9c60
2023/04/09 10:26:38 DEBUG : /: >Listxattr: errc=-78
2023/04/09 10:26:38 DEBUG : /: Listxattr: fill=0x1016e9c60
2023/04/09 10:26:38 DEBUG : /: >Listxattr: errc=-78
2023/04/09 10:26:38 DEBUG : /: Listxattr: fill=0x1016e9c60
2023/04/09 10:26:38 DEBUG : /: >Listxattr: errc=-78
2023/04/09 10:26:38 DEBUG : /.DS_Store: Listxattr: fill=0x1016e9c60
2023/04/09 10:26:38 DEBUG : /.DS_Store: >Listxattr: errc=-78
2023/04/09 10:26:38 DEBUG : /: Listxattr: fill=0x1016e9c60
2023/04/09 10:26:38 DEBUG : /: >Listxattr: errc=-78
2023/04/09 10:26:38 DEBUG : /.DS_Store: Listxattr: fill=0x1016e9c60
2023/04/09 10:26:38 DEBUG : /.DS_Store: >Listxattr: errc=-78
2023/04/09 10:26:38 DEBUG : /: Listxattr: fill=0x1016e9c60
2023/04/09 10:26:38 DEBUG : /: >Listxattr: errc=-78
2023/04/09 10:26:38 DEBUG : /: Listxattr: fill=0x1016e9c60
2023/04/09 10:26:38 DEBUG : /: >Listxattr: errc=-78
2023/04/09 10:26:38 DEBUG : /.DS_Store: Getattr: fh=0xFFFFFFFFFFFFFFFF
2023/04/09 10:26:38 DEBUG : /.DS_Store: >Getattr: errc=0
2023/04/09 10:26:38 DEBUG : /.DS_Store: OpenEx: flags=0x0
2023/04/09 10:26:38 DEBUG : /.DS_Store: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2023/04/09 10:26:38 DEBUG : .DS_Store: Open: flags=O_RDONLY
2023/04/09 10:26:38 DEBUG : .DS_Store: newRWFileHandle: 
2023/04/09 10:26:38 DEBUG : .DS_Store: >newRWFileHandle: err=<nil>
2023/04/09 10:26:38 DEBUG : .DS_Store: >Open: fd=.DS_Store (rw), err=<nil>
2023/04/09 10:26:38 DEBUG : /.DS_Store: >OpenFile: fd=.DS_Store (rw), err=<nil>
2023/04/09 10:26:38 DEBUG : /.DS_Store: >OpenEx: errc=0, fh=0x0
2023/04/09 10:26:38 DEBUG : /: Statfs: 
2023/04/09 10:26:38 DEBUG : /: >Statfs: stat={Bsize:4096 Frsize:4096 Blocks:4294967295 Bfree:4294967295 Bavail:4294967295 Files:1000000000 Ffree:1000000000 Favail:0 Fsid:0 Flag:0 Namemax:255}, errc=0
2023/04/09 10:26:38 DEBUG : /.DS_Store: Read: ofst=0, fh=0x0
2023/04/09 10:26:38 DEBUG : .DS_Store(0x14000c1f6c0): _readAt: size=32768, off=0
2023/04/09 10:26:38 DEBUG : .DS_Store(0x14000c1f6c0): openPending: 
2023/04/09 10:26:38 DEBUG : .DS_Store: vfs cache: checking remote fingerprint "6148,2023-04-09 14:10:09.91 +0000 UTC,75fdbcc2b00cff8b836e8df017b8d355" against cached fingerprint "6148,2023-04-09 14:10:09.91 +0000 UTC,75fdbcc2b00cff8b836e8df017b8d355"
2023/04/09 10:26:38 DEBUG : .DS_Store: vfs cache: truncate to size=6148 (not needed as size correct)
2023/04/09 10:26:38 DEBUG : /: Listxattr: fill=0x1016e9c60
2023/04/09 10:26:38 DEBUG : /: >Listxattr: errc=-78
2023/04/09 10:26:38 DEBUG : : Added virtual directory entry vAddFile: ".DS_Store"
2023/04/09 10:26:38 DEBUG : .DS_Store(0x14000c1f6c0): >openPending: err=<nil>
2023/04/09 10:26:38 DEBUG : vfs cache: looking for range={Pos:0 Size:6148} in [{Pos:0 Size:6148}] - present true
2023/04/09 10:26:38 DEBUG : .DS_Store(0x14000c1f6c0): >_readAt: n=6148, err=EOF
2023/04/09 10:26:38 DEBUG : /.DS_Store: >Read: n=6148
2023/04/09 10:26:38 DEBUG : /: Statfs: 
2023/04/09 10:26:38 DEBUG : /: >Statfs: stat={Bsize:4096 Frsize:4096 Blocks:4294967295 Bfree:4294967295 Bavail:4294967295 Files:1000000000 Ffree:1000000000 Favail:0 Fsid:0 Flag:0 Namemax:255}, errc=0
2023/04/09 10:26:38 DEBUG : /: Opendir: 
2023/04/09 10:26:38 DEBUG : /: OpenFile: flags=O_RDONLY, perm=-rwxrwxrwx
2023/04/09 10:26:38 DEBUG : /: >OpenFile: fd=/ (r), err=<nil>
2023/04/09 10:26:38 DEBUG : /: >Opendir: errc=0, fh=0x1
2023/04/09 10:26:38 DEBUG : /: Readdir: ofst=0, fh=0x1
2023/04/09 10:26:38 DEBUG : /: >Readdir: items=382, errc=0
2023/04/09 10:26:38 DEBUG : /.DS_Store: Flush: fh=0x0
2023/04/09 10:26:38 DEBUG : .DS_Store(0x14000c1f6c0): RWFileHandle.Flush
2023/04/09 10:26:38 DEBUG : /.DS_Store: >Flush: errc=0
2023/04/09 10:26:38 DEBUG : /.DS_Store: Release: fh=0x0
2023/04/09 10:26:38 DEBUG : .DS_Store(0x14000c1f6c0): RWFileHandle.Release
2023/04/09 10:26:38 DEBUG : .DS_Store(0x14000c1f6c0): close: 
2023/04/09 10:26:38 DEBUG : /: Statfs: 
2023/04/09 10:26:38 DEBUG : /: >Statfs: stat={Bsize:4096 Frsize:4096 Blocks:4294967295 Bfree:4294967295 Bavail:4294967295 Files:1000000000 Ffree:1000000000 Favail:0 Fsid:0 Flag:0 Namemax:255}, errc=0
2023/04/09 10:26:38 DEBUG : .DS_Store: vfs cache: setting modification time to 2023-04-09 14:10:09.91 +0000 UTC
2023/04/09 10:26:38 DEBUG : .DS_Store(0x14000c1f6c0): >close: err=<nil>
2023/04/09 10:26:38 DEBUG : /.DS_Store: >Release: errc=0
2023/04/09 10:26:38 DEBUG : /.DS_Store: Getattr: fh=0xFFFFFFFFFFFFFFFF
2023/04/09 10:26:38 DEBUG : /.DS_Store: >Getattr: errc=0
2023/04/09 10:26:38 DEBUG : /: Releasedir: fh=0x1
2023/04/09 10:26:38 DEBUG : /: >Releasedir: errc=0
2023/04/09 10:26:38 DEBUG : /.DS_Store: Getattr: fh=0xFFFFFFFFFFFFFFFF
2023/04/09 10:26:38 DEBUG : /.DS_Store: >Getattr: errc=0
2023/04/09 10:26:38 DEBUG : /A Guide for Professionals: Getattr: fh=0xFFFFFFFFFFFFFFFF

Truncated the log rather than listing all the folders In the shared drive

Try adding --allow-other to the rclone mount command.

Are you running the rclone mount as you (without sudo?) and trying to access it as you?

Tried it both with and without sudo, and yes accessing as me

What are the permissions on the directory you can't list?

Can you list it if you don't cd into it first?

Directory is drwxr-xr-x owned by giddion:users
Still get Operation not permitted if I try to ls ~/giddion/calibre_library

@jwink3101 you've used FUSE-T on macs - have you any ideas here?

Can we get a debug log with --allow-other and what user it's running as ?

From the commands, it seems like they are using Calibre. I’ve had some odd behavior with SQLite and mounts but usually a full cache works. I do wonder if it’s something with FUSE-T and SQLite used by Calibre.

What happens if you just try to look at one of the books. Or the backup JSON. I know the log was truncated so it’s hard to know how it was opened.

It's a google drive that contains the books from an old calibre install on a different computer. I'm getting ready to install calibre and wanted to use this folder from my GDrive. So no SQLLite yet.

here is the full log

In another terminal window while rclone mount was still running
giddion@Mac10555 ~ % cd calibre_library
giddion@Mac10555 calibre_library % ls
ls: .: Operation not permitted

Do you have access to the regular MacFuse to test? It would be good to isolate it to fuse-T

Can you run rclone size on the remote? This will tell us about access to the depth of the directories.

Another (mediocre) workaround is to serve WebDAV and mount that with Finder but it’s a second-class experience. But it may be acceptable for the short term

Total objects: 3.621k (3621)
Total size: 1.550 GiB (1664767673 Byte)

I tried first with MacFuse and it didn't mount at all. But I could try it again.

I know this isn't particularly helpful, but this is seeming more and more like a computer setup problem and less an rclone one.

Do you happen to have a spare machine you can use to test? Or maybe run UTM and try there? (long shot, I know).

What about other FUSE programs. Can you run sshfs? (Either the original or the FUSE-T one?).

I'm not sure how much is that it's M1 Pro with Ventura, often had problems with programs. Linux has been a pain to get working in UTM. I'll try an sshfs mount in a bit.

Yes I can sshfs mount from another server, I can even mount the books folder from that other server over sshfs as it has the gdrive books folder mounted with rclone mount.

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