无法写入使用 SSHFS 挂载的文件夹

JM *_*ork 6 ssh sshfs chmod

我刚刚根据SSHFS (Ubuntu Docs)创建了一个文件夹

sudo apt-get install sshfs
sudo gpasswd -a jm fuse
sshfs -o idmap=user jm@example.com:/path/to/folder folder
Run Code Online (Sandbox Code Playgroud)

然后我发现该文件夹已挂载,但无法写入。权限似乎很好

http://pastie.org/1969299

但我什至尝试过

chmod -R 777 ./folder
Run Code Online (Sandbox Code Playgroud)

还是不行

更新:似乎我不能只使用 NetBeans 进行编写。但它适用于例如 LeafPad

Rya*_*son 5

您的更新表明只有某些应用程序在写入 sshfs 挂载时遇到问题。您可能必须启用sshfs 手册页中列出的一项或多项“解决方法” 。我将从“截断”和“重命名”解决方法开始:

sshfs -o idmap=user -o workaround=truncate:rename jm@example.com:/path/to/folder folder
Run Code Online (Sandbox Code Playgroud)


enz*_*tib 3

从您的描述中不清楚什么是本地用户和远程用户,以及文件的权限是什么。

无论如何,我会尝试使用命令行-o allow_other上的选项sshfs


ear*_*Lon -1

您需要安装FUSE并将自己添加到组中。

sudo apt-get install fuse-utils
sudo modprobe fuse
sudo gpasswd -a $USER fuse
Run Code Online (Sandbox Code Playgroud)

重新启动计算机并尝试再次安装驱动器。

我建议您在 /etc/fstab 文件中添加一条规则,如下所示:

sshfs#user@host.com:/ /mnt/local-dir/ fuse comment=sshfs,noauto,users,exec,uid=1000,gid=1000,allow_other,reconnect,transform_symlinks,BatchMode=yes,IdentityFile=/home/user/.ssh/id_rsa-blahblah 0 0
Run Code Online (Sandbox Code Playgroud)

然后您可以运行mount /mnt/local-dir挂载远程文件系统。

如果您不熟悉公钥身份验证,请删除 ',IdentityFile=/home/user/.ssh/id_rsa-blahblah' 并查看公钥身份验证:D