37

I use SSHFS to mount a directory on a remote server. There is a user xxx on client and server. UID and GID are identical on both boxes.

I use

sshfs -o kernel_cache -o auto_cache -o reconnect -o compression=no \ 
      -o cache_timeout=600 -o ServerAliveInterval=15 \
      [email protected]:/mnt/content /home/xxx/path_to/content

to mount the directory on the remote server. When I log in as xxx on the client I have no problems. I can cd into /home/xxx/path_to/content.

But when I log in on the client as another user zzz and then

$ ls -l /home/xxx/path_to

I get this

d?????????   ? ?    ?        ?                ? content

and on

$ ls -l /home/xxx/path_to/content

I get

ls: cannot access content: Permission denied

When I do

$ ls -l /mnt

on the remote server I get

drwxr-xr-x 6 xxx xxx  4096 2011-07-25 12:51 content

What am I doing wrong? The permissions seem to be correct to me. Am I wrong?

1
  • Log in as xxx user and give us the output of ls -ld /home/xxx/path_to/content?
    – quanta
    Commented Jul 26, 2011 at 8:24

1 Answer 1

47

I've found the answer myself. The problem was that I didn't use the option allow_other.

sshfs -o allow_other -o kernel_cache -o auto_cache -o reconnect \
  -o compression=no -o cache_timeout=600 -o ServerAliveInterval=15 \
  [email protected]:/mnt/content /home/xxx/path_to/content

To use this option you have to set the option user_allow_other in /etc/fuse.conf. When I did this I had another problem. The file /etc/fuse.conf haven't had read permissions for other users on my Ubuntu box. So I've changed that too and now I can access the directory with any user.

3
  • 5
    The /etc/fuse.conf file is not supposed to have read options for everyone. The intent is that you add yourself to the fuse group so that you can read it via group rights.
    – Jherico
    Commented Dec 27, 2012 at 18:32
  • 1
    Confirming that the need to enable user_allow_other in etc/fuse.conf on the client was required for my user to access folders outside of my home directory on the server when accessing the server from an identical UID and GID. Being in the fuse group on the client was sufficient for me to read /etc/fuse.conf on Ubuntu, as I found the file was set rw_r______ root:fuse
    – user163794
    Commented Mar 10, 2013 at 6:38
  • 1
    If you intend to use the allow_other mount option like the answer above suggests, be aware that the Linux kernel has an unresolved security bug that affects FUSE. See github.com/libfuse/libfuse/issues/15
    – MountainX
    Commented Feb 12, 2018 at 10:14

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .