现在如何以普通用户身份在命令行上挂载 Linux 上的 SMB 共享?

现在如何以普通用户身份在命令行上挂载 Linux 上的 SMB 共享?

这基本上就是我在回答中提到的问题CIFS 的用户空间应用程序重新表述为问题,因为我目前不知道真正的解决方案。

过去,大多数 Linux 发行版中都提供一个名为 的工具smbmount(通常位于名为 的软件包中smbfs),非特权用户可以使用该工具在他们有写入权限的地方挂载 SMB 共享。但至少 Debian 中最近的软件包不再提供这些程序,而且我在该软件包中cifs-utils没有看到带有前缀的类似替代程序。cifs

有两个软件包(fusesmbsmbnetfuse)可用,它们提供单个挂载点,可以访问多个已配置的 SMB 共享或显示所有本地 SMB 服务器,如 Windows 资源管理器中的网络树视图。但这不是我真正想要的,特别是因为我不想以纯文本形式将密码存储在文件系统上(这似乎fusesmb是必需的),而是在挂载时输入一次。fusesmb尽管如此,我还是尝试了,但没有让它工作,挂载点始终为空,我没有看到任何错误消息或类似信息。此外,文档fusesmb非常稀少。

所以我想知道:现在(即 2015 年)我如何以普通用户身份在 Linux 上安装 SMB 共享?我可以用两种方式,要么使用某种fuse基于工具(首选),要么使用某种 setuid 工具(如果我smbmount没记错的话)。

我了解桌面环境的 GVFS 和 KIO 子系统,但我需要一些可以在命令行上完成的操作,据我所知,GVFS 和 KIO 都没有进行真正的挂载,而只是打开一个类似 Windows 资源管理器的窗口来显示此类共享的内容。

当然,我现在也了解ftp类似的smbclient,并且知道smb4kKDE 的网络浏览器和基于 ncurses 的smbc。但它们在这里也帮不上什么忙。

或者进行比较:我想要的sshfs只是 SMB 而不是 SFTP。:-)

答案1

垂直起降系统当有 dbus 环境可用时,可以从命令行使用 mounts gio mount。挂载点显示在 下/var/run/user/[uid]/gvfs

另请参阅以非 root 用户身份安装 Samba 并提示输入密码

相关内容