sshfs is mounting filesystems as another user
Solution 1
It's worth a try to explicitly set the UID/GID. This could be done, for example, using the sshfs options:
uid=$(id -u),gid=$(id -g)
or
uid=$(id -u someuser),gid=$(id -g somegroup)
See https://wiki.archlinux.org/index.php/SSHFS#Secure_user_access for more details.
Solution 2
The complete command is
sshfs \
-o uid=`id -u username` \
-o gid=`id -g username` \
-o allow_other \
[email protected]:/target/folder \
/local/folder
it maps username's user_id and group_id to the mountpoint (so the mountpoint looks like that user's own).
The allow_other
allows others to use this mountpoint which is good if the root mounts the folder for someone else.
Alternatively you can use -o allow_root
to let root there too.
Related videos on Youtube
Robert
Updated on September 18, 2022Comments
-
Robert over 1 year
So I am trying to mount a folder from another computer in my LAN, and I am able to ssh without any issues. But, I am unable to make any changes when I access the mounted folder.
This is what I have done so far:
Install:
$sudo apt-get install sshfs $sudo modprobe fuse $sudo adduser <username> fuse $sudo chown root:fuse /dev/fuse $sudo chmod +x /dev/fuse $mkdir ~/remoteserv
And when I access the remote folder via sshfs:
$sshfs -o idmap=user <username>@<ipaddress>:/home/user ~/remoteserv
The output of becomes:
$~/remoteserv$ ls -l total 60 drwxr-xr-x 1 <notmyusername> <notmyusername> 4096 2012-04-13 21:54 Desktop drwxr-xr-x 1 <notmyusername> <notmyusername> 4096 2012-04-10 13:05 Documents drwxr-xr-x 1 <notmyusername> <notmyusername> 4096 2012-04-17 19:06 Downloads drwxr-xr-x 1 <notmyusername> <notmyusername> 4096 2012-04-13 21:55 Music drwxr-xr-x 1 <notmyusername> <notmyusername> 4096 2012-04-03 15:07 Pictures ... more of the same
I am unable to access any of the files properly because sshfs is mounting the files under my wife's username! I have no idea why, and I feel like I have made a large mistake somewhere. Is there some configuration file which I need to tweak somewhere? I can't seem to find anything on the manpage :/
I even tried an -o allow_other option when I mounted, but it still mounted it under my wife's username! What is going on?
-
rexford about 8 yearsThis thread is quite old, but: did the answer below help you?
-
Robert about 8 years@rexford Wow, I don't even remember what I ended up doing this was so long ago. I think I ended up using a python SimpleHTTPServer like this mohitishere.wordpress.com/2012/10/24/… In the desired directory:
python -m SimpleHTTPServer
Then visit : localhost:8000
-
-
Nobody over 7 yearsThis does not seem to match what the documentation says, neither does it work for me. -o idmap=username leads to an error and according to the docs, idmap can only be "none", "user" or "file" anyway. (on the other hand, the uid= and gid= options do have the desired effect when used alone)
-
tohuwawohu over 7 years@Nobody: Seems you're right - i can't remember if it worked as described over four years ago. TY for your comment!
-
Nobody over 7 yearsThanks. This is also related: unix.stackexchange.com/questions/17402/… (maybe even a cross site duplicate)
-
Nmath over 3 yearsThis answer is incomplete. Who are you replying to? Please note that this is a Q&A site, not a discussion forum. Please try to compose your answers in a way that it answers the question without needing to read another post.