这基本上就是我在回答中提到的问题CIFS 的用户空间应用程序重新表述为问题,因为我目前不知道真正的解决方案。
过去,大多数 Linux 发行版中都提供一个名为 的工具smbmount
(通常位于名为 的软件包中smbfs
),非特权用户可以使用该工具在他们有写入权限的地方挂载 SMB 共享。但至少 Debian 中最近的软件包不再提供这些程序,而且我在该软件包中cifs-utils
没有看到带有前缀的类似替代程序。cifs
有两个软件包(fusesmb
和smbnetfuse
)可用,它们提供单个挂载点,可以访问多个已配置的 SMB 共享或显示所有本地 SMB 服务器,如 Windows 资源管理器中的网络树视图。但这不是我真正想要的,特别是因为我不想以纯文本形式将密码存储在文件系统上(这似乎fusesmb
是必需的),而是在挂载时输入一次。fusesmb
尽管如此,我还是尝试了,但没有让它工作,挂载点始终为空,我没有看到任何错误消息或类似信息。此外,文档fusesmb
非常稀少。
所以我想知道:现在(即 2015 年)我如何以普通用户身份在 Linux 上安装 SMB 共享?我可以用两种方式,要么使用某种fuse
基于工具(首选),要么使用某种 setuid 工具(如果我smbmount
没记错的话)。
我了解桌面环境的 GVFS 和 KIO 子系统,但我需要一些可以在命令行上完成的操作,据我所知,GVFS 和 KIO 都没有进行真正的挂载,而只是打开一个类似 Windows 资源管理器的窗口来显示此类共享的内容。
当然,我现在也了解ftp
类似的smbclient
,并且知道smb4k
KDE 的网络浏览器和基于 ncurses 的smbc
。但它们在这里也帮不上什么忙。
或者进行比较:我想要的sshfs
只是 SMB 而不是 SFTP。:-)
答案1
垂直起降系统当有 dbus 环境可用时,可以从命令行使用 mounts gio mount
。挂载点显示在 下/var/run/user/[uid]/gvfs
。