I’m trying to mount a O365 OneDrive using a non-root user on FreeBSD 12 RC1. I can do this successfully with the following command:
rclone mount --dir-cache-time 5s --vfs-cache-mode full onedrive: /tank/onedrive
However, if I try with “–allow-other” (full command below):
rclone mount --allow-other --dir-cache-time 5s --vfs-cache-mode full onedrive: /tank/onedrive
I get these errors:
mount helper error: mount_fusefs: /dev/fuse on /tank/onedrive: Operation not permitted
Fatal error: failed to mount FUSE fs: mount_fusefs: exit status 71
Does anyone know what might be causing this or how to fix it? As far as I can tell, on FreeBSD, FUSE doesn’t use /etc/fuse.conf file to add the “allow_other” setting - that I know of.
In the end, I did add “allow_other” - I found that FreeBSD does use \etc\fuse.conf after all. Unfortunately it didn’t make a difference.
There are no kernel messages. I have also tested this on FreeBSD 11.2, just in case it was a bug in version 12 RC1 - but I got the same error.
Is there anything else you can suggest? I can run a trace if that’s helpful, if it helps you debug. I wonder if anyone else might be seeing this as well?
I had a quick trace through the code and all it seems to be doing is adding the allow_other as an option.
What I’d do if I were you is try to reproduce the problem with the upstream library directly, using one of the examples and if you can report an issue there. So for example try hellofs but add the extra option fuse.AllowOther() in the call to fuse.Mount.
Using the helloworld example, I was able to successfully compile and “mount” the example as expected.
By adding fuse.AllowOther(), compiling and running again I got exactly the same error as mentioned previously: mount helper error: mount_fusefs: /dev/fuse on /tank/onedrive: Operation not permitted Fatal error: failed to mount FUSE fs: mount_fusefs: exit status 71
Below is a snippet from hello.go that I edited, just want to confirm the changes I made are what you were suggesting:
$ cd Test
$ ls
Movies Radarr_Movies TV TV_Ended mounted
$ ps aux | grep rclone
felix 1917 0.4 0.1 127972 35008 3 S+ 15:40 0:00.26 rclone mount gcrypt: /usr/home/felix/Test
Oops. Sorry I misread the allow_other bit that was the problem…Cancel my post!
Yes I can mount it without the --allow-other switch as a non-root user, but as far as I know --allow-other is necessary if you want to share the mount point with samba - which is what I’m trying to do.
I can get this working no problem on linux, but so far not on FreeBSD.