SSHFS 的所有者/组错误

SSHFS 的所有者/组错误

我使用 SSHFS 挂载了一个远程服务器,除了所有者/组信息之外,其他一切都按预期运行。无论我检查哪个文件的所有者/组,结果总是root:root

我正在像这样安装遥控器(在我的 fstab 中):

[email protected]:/var/www/clients/client1/  /mnt/ftp_remote  fuse.sshfs _netdev,user,idmap=user,transform_symlinks,identityfile=/root/.ssh/id_rsa,allow_other,default_permissions,uid=0,gid=0 0 0

这是为什么?如何让 SSHFS 显示正确的文件所有者/组?

答案1

你不能。这是 SSHFS/Fuse 的限制:默认情况下,所有内容都映射到你用于连接 SSH 的用户的权限。

不过,您似乎可以使用文件稍微解决这个问题,请参阅手册页中的idmap选项-o idmap-o uidfile和。-o gidfile-o nomap

答案2

这是一篇 4 年前的帖子,但是为了节省别人的时间,我会分享它。这个结果是正确的:你以用户,使用其凭证,因此所有操作都将以 root 身份执行。这与使用名为 foo 的用户登录并使用该用户创建文件相同,所有创建的文件都将拥有 foo 所有权,并且 foo 用户限制也是如此(例如,只有当此用户获得许可时才会创建)。

如果您确实想要拥有不同的权限,则需要与目标用户一起执行操作。这是建议:

**client1**@188.yyy.193.xxx:/var/www/clients/client1/  /mnt/ftp_remote  fuse.sshfs _netdev,user,idmap=user,transform_symlinks,identityfile=/root/.ssh/**client1_**id_rsa,allow_other,default_permissions 0 0

必须有客户端1用户名,并具备登录能力。

相关内容