Fusermount: bad mount point: No such file or directory (even though directory does exist)

What is the problem you are having with rclone?

When trying to mount a remote, I get the following error (please note that /home/pi/test does in fact exist):

2022/08/09 19:23:17 mount helper error: fusermount: bad mount point /home/pi/test: No such file or directory
2022/08/09 19:23:17 Fatal error: failed to mount FUSE fs: fusermount: exit status 1

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

rclone v1.59.0

  • os/version: alpine 3.16.0
  • os/kernel: 5.15.32-v7l+ (armv7l)
  • os/type: linux
  • os/arch: arm
  • go/version: go1.18.3
  • go/linking: static
  • go/tags: none

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

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

  rclone:
    image: rclone/rclone
    container_name: rclone
    environment:
      - PUID=1000
      - PGID=1000
    volumes:
      - ./rclone/config:/config/rclone
      - ./rclone/data:/data:shared  
    command: "mount DropBox: /home/pi/test --vfs-cache-mode writes -v"
    cap_add:
      - SYS_ADMIN
    security_opt:
      - apparmor:unconfined
    devices:
      - /dev/fuse

The rclone config contents with secrets removed.

Paste config here

A log from the command with the -vv flag

2022/08/09 19:28:59 DEBUG : rclone: Version "v1.59.0" starting with parameters ["rclone" "mount" "DropBox:" "/home/pi/test" "--vfs-cache-mode" "writes" "-vv"]
2022/08/09 19:28:59 DEBUG : Creating backend with remote "DropBox:"
2022/08/09 19:28:59 DEBUG : Using config file from "/config/rclone/rclone.conf"
2022/08/09 19:29:00 DEBUG : vfs cache: root is "/root/.cache/rclone"
2022/08/09 19:29:00 DEBUG : vfs cache: data root is "/root/.cache/rclone/vfs/DropBox"
2022/08/09 19:29:00 DEBUG : vfs cache: metadata root is "/root/.cache/rclone/vfsMeta/DropBox"
2022/08/09 19:29:00 DEBUG : Creating backend with remote "/root/.cache/rclone/vfs/DropBox/"
2022/08/09 19:29:00 DEBUG : Creating backend with remote "/root/.cache/rclone/vfsMeta/DropBox/"
2022/08/09 19:29:00 DEBUG : Dropbox root '': Mounting on "/home/pi/test"
2022/08/09 19:29:00 INFO  : vfs cache: cleaned: objects 0 (was 0) in use 0, to upload 0, uploading 0, total size 0 (was 0)
2022/08/09 19:29:00 mount helper error: fusermount: bad mount point /home/pi/test: No such file or directory
2022/08/09 19:29:00 Fatal error: failed to mount FUSE fs: fusermount: exit status 1

You need to make sure the directory exists.

mkdir /home/pi/test

The directory does exist:

pi@raspberrypi:~ $ ls -a /home/pi/test
.  ..

Right, but you have a docker configuration it looks like.

You'd have to expose that to your docker setup so the container can see the local path you are trying to mount.

Thank you, you are probably right. I'm still wrapping my head around docker, but do you know what would be the best way to do that?

I am not a superb docker person either unfortunately..

I think maybe add it there:

  • /home/pi/test:/home/pi/test

Thank you for your help troubleshooting this. I tried that and got the following:

2022/08/09 20:58:11 DEBUG : rclone: Version "v1.59.0" starting with parameters ["rclone" "mount" "DropBox:" "/home/pi/test" "--vfs-cache-mode" "writes" "-vv"]
2022/08/09 20:58:11 DEBUG : Creating backend with remote "DropBox:"
2022/08/09 20:58:11 DEBUG : Using config file from "/config/rclone/rclone.conf"
2022/08/09 20:58:11 Fatal error: directory already mounted, use --allow-non-empty to mount anyway: /home/pi/test

When I mount it with --allow-non-empty I get the following:

2022/08/09 20:59:42 DEBUG : rclone: Version "v1.59.0" starting with parameters ["rclone" "mount" "DropBox:" "/home/pi/test" "--vfs-cache-mode" "writes" "--allow-non-empty" "-vv"]
2022/08/09 20:59:42 DEBUG : Creating backend with remote "DropBox:"
2022/08/09 20:59:42 DEBUG : Using config file from "/config/rclone/rclone.conf"
2022/08/09 20:59:43 DEBUG : vfs cache: root is "/root/.cache/rclone"
2022/08/09 20:59:43 DEBUG : vfs cache: data root is "/root/.cache/rclone/vfs/DropBox"
2022/08/09 20:59:43 DEBUG : vfs cache: metadata root is "/root/.cache/rclone/vfsMeta/DropBox"
2022/08/09 20:59:43 DEBUG : Creating backend with remote "/root/.cache/rclone/vfs/DropBox/"
2022/08/09 20:59:43 DEBUG : Creating backend with remote "/root/.cache/rclone/vfsMeta/DropBox/"
2022/08/09 20:59:43 DEBUG : Dropbox root '': Mounting on "/home/pi/test"
2022/08/09 20:59:43 INFO  : vfs cache: cleaned: objects 0 (was 0) in use 0, to upload 0, uploading 0, total size 0 (was 0)
2022/08/09 20:59:43 DEBUG : : Root: 
2022/08/09 20:59:43 DEBUG : : >Root: node=/, err=<nil>

However, the folder is empty and I am not seeing any of the folders in my remote.

Is there anything in that directory? Usually, you want the spot to be empty before mounting something in it.

That's what is strange, the directory is completely empty:

pi@raspberrypi:~ $ ls -a /home/pi/test
.  ..

Might be a docker thing? I'm not sure as I just run rclone outside of a docker in my setup.

You will probably need to mount the parent directory i.e /home/pi and also configure bind propagation (Use bind mounts | Docker Documentation), so something like this:

- /home/pi:/home/pi:shared

Thank you for your help. I tried what you suggested, but still getting this:

2022/08/10 15:18:20 DEBUG : rclone: Version "v1.59.0" starting with parameters ["rclone" "mount" "DropBox:pi_test" "/home/pi/test" "--vfs-cache-mode" "writes" "-vv"]
2022/08/10 15:18:20 DEBUG : Creating backend with remote "DropBox:pi_test"
2022/08/10 15:18:20 DEBUG : Using config file from "/config/rclone/rclone.conf"
2022/08/10 15:18:20 Fatal error: directory already mounted, use --allow-non-empty to mount anyway: /home/pi/test

And this is what I get when I inspect the container:

            {
                "Type": "bind",
                "Source": "/home/pi/test",
                "Destination": "/home/pi/test",
                "Mode": "shared",
                "RW": true,
                "Propagation": "shared"
            }


I'm not trying to talk you out of using docker, but for me, I find using rclone in a docker to be overkill as it's a single binary with a single config file with a nice easy selfupdate feature as well.

I have 18 other apps in my docker setup as if I need to reinstall my system, it works superb for those. Restoring my rclone is just copying that one config file along with 2 service files for mounting some stuff.

You need to use the parent directory i.e. /home/pi

Thank you. I forgot that I had changed that (after it did not work). With home/pi I get

2022/08/10 15:41:30 DEBUG : rclone: Version "v1.59.0" starting with parameters ["rclone" "mount" "DropBox:pi_test" "/home/pi/test" "--vfs-cache-mode" "writes" "-vv"]
2022/08/10 15:41:30 DEBUG : Creating backend with remote "DropBox:pi_test"
2022/08/10 15:41:30 DEBUG : Using config file from "/config/rclone/rclone.conf"
2022/08/10 15:41:30 INFO  : Dropbox root 'pi_test': Failed to get StartCursor: path/not_found/
2022/08/10 15:41:30 DEBUG : vfs cache: root is "/root/.cache/rclone"
2022/08/10 15:41:30 DEBUG : vfs cache: data root is "/root/.cache/rclone/vfs/DropBox/pi_test"
2022/08/10 15:41:30 DEBUG : vfs cache: metadata root is "/root/.cache/rclone/vfsMeta/DropBox/pi_test"
2022/08/10 15:41:30 DEBUG : Creating backend with remote "/root/.cache/rclone/vfs/DropBox/pi_test"
2022/08/10 15:41:30 DEBUG : Creating backend with remote "/root/.cache/rclone/vfsMeta/DropBox/pi_test"
2022/08/10 15:41:30 DEBUG : Dropbox root 'pi_test': Mounting on "/home/pi/test"
2022/08/10 15:41:30 INFO  : vfs cache: cleaned: objects 0 (was 0) in use 0, to upload 0, uploading 0, total size 0 (was 0)
2022/08/10 15:41:30 DEBUG : : Root: 
2022/08/10 15:41:30 DEBUG : : >Root: node=/, err=<nil>

I also get a popup saying that the "specified directory is not valid".

Which program is returning the popup?

Did you check the mount from outside the container via the root user?

Which program is returning the popup?

It's a system popup

Did you check the mount from outside the container via the root user?

Interesting. If I run sudo pcmanfm I do see the contents of the remote. What does that mean?

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

1 Like

That did it! Thank you @darthShadow and @Animosity022 for your help and patience!

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