我在 macOS Sierra 上运行,并尝试通过 SSHFS 和 osxfuse 配置外部服务器目录的自动挂载。但是,每次挂载磁盘时,它都归属于普通用户,root
而普通用户似乎无权访问。我已下载最新稳定版本osxfuse
3.5.5。
我已经寻找解决方案几个小时了,但都没有帮助。我已经尝试allow_other
通过以下方式将设置为 1
sysctl -w osxfuse.tunables.allow_other=1
但是它返回错误
sysctl: unknown oid 'osxfuse.tunables.allow_other'
笔记:当我尝试通过以下方式安装磁盘时
sshfs -o IdentityFile=/path/to/key user@host:/path/to/external /path/to/local
这按预期工作。当我尝试配置同一目录的自动挂载时,会出现问题。我还找到了一个教程,它指导创建一个plist
加载 osxfuse 的,但是它使用路径/Library/Filesystems/osxfusefs.fs/Support/load_osxfusefs
,而我所能找到的只有/Library/Filesystems/osxfusefs.fs/Contents/Resources/load_osxfuse
。即使我替换这些值,也没有任何变化。
有什么建议吗?
答案1
在当前版本的 OSXFuse 和 mac OS 中,sysctl 所用的名称似乎实际上是“vfs.generic.osxfuse.tunables.allow_other”。因此命令应为:
sysctl -w vfs.generic.osxfuse.tunables.allow_other=1
与“vfs.generic.osxfuse.tunables.admin_group”相同,您可能也会对此感兴趣。它允许您仅向特定组授予 allow_other 权限,从而提供更高的安全性。维基百科上关于此也使用了错误的命令,但信息仍然相关。
答案2
我已经有一段时间没有使用 Mac 了,所以我希望这会有所帮助:
我在 /media/my_mountfile 中创建了挂载卷的位置,并更改了权限,使其可供每个用户使用chmod 777 /media/my_mountfile
。然后我将sshfs
命令直接添加到我的~/.bashrs
或中。为此,您必须在两台计算机之间交换 rsa 密钥,以便在使用或~/.bashprofile
连接时不需要密码。ssh
sshfs
答案3
我知道有点晚了,但你只需要向 sshfs defer_permissions 添加一个选项。我的方法直接奏效了。