有没有 Windows 下好用的 samba 客户端/浏览器

2021-06-02 09:35:36 +08:00
 SSang

Windows 自带的有几个痛点: 1 、不能用非标端口 2 、不能映射根目录(如 \file.com\ 这种) 3 、只能使用一个账号

网上找了一圈好像都没有解决的办法,问一下大家都是怎么解决这个问题的,或有没有好用的客户端推荐

12276 次点击
所在节点    Windows
33 条回复
SSang
2021-06-02 14:03:39 +08:00
@ly841000 @passerbytiny

我知道 samba 是专门服务于 windows 的,其他端只是适配,所以即使是 linux 上配置依然能看到很多 windows 的痕迹,windows 可能一开始就没想过去支持多端口,也没想过 linux 会做出个服务端来,行为逻辑还和自己不一样。

但现实情况是,samba 在 linux 上的服务端确实更强大,且非标端口在暴露公网的情况下也是个很重要的配置

windows 当然没有义务去适配一个别人的东西,我也没指责 windows 没做好适配,毕竟本来就是 linux 自己改的端口。只是当我在其他系统能够使用非标端口,使用根目录映射的时候,自然会认为 windows 系统上理论上是能够实现适配的,所以我才寻求第三方的挂载软件。

所以我的主要需求一直都是询问是否有第三方适配软件,而不是争论这些东西是否合理。
ysc3839
2021-06-02 15:55:37 +08:00
@ly841000 @passerbytiny @SSang
感觉你们搞混了 SMB 和 Samba 。
Server Message Block (SMB) 是微软开发的一个网络协议。Windows 的文件共享是实现了 SMB 协议的一个软件。
Samba 也是实现了 SMB 协议的一个软件,设计在类 Unix 操作系统上运行。
还有个 ksmbd (也称作 cifsd) 是实现了 SMB 协议服务端的软件,设计在 Linux 内核中运行。
mingl0280
2021-06-02 22:28:41 +08:00
@SSang 没有,别想了。Windows 共享是事实标准,任何不符合这个事实标准的都是非标准操作。人家也没想着这东西能给你挂载非标准端口。
jeeyong
2021-06-03 01:45:49 +08:00
@mikuc #11 RaiDrive+1, 不过貌似速度会有影响..
同时对比过 rclone, rclone 好像会更快, 速度更稳定一些..
raiz
2021-06-03 10:33:43 +08:00
借楼问一下,怎么 windows 软件,比如某盘,某 ps,是怎么实现在我的电脑那里显示一个虚拟的驱动器,并且某 ps 点双击进去还能嵌入页面到 文件管理器。
jasonyang9
2021-06-03 17:04:30 +08:00
很久以前研究安卓客户端的时候找到的: https://tubecast.webrox.fr/landrive/portmapping.html

V2EX 帖子: https://www.v2ex.com/t/580186
SSang
2021-06-10 09:58:18 +08:00
@mingl0280 我也没想着这玩意能给我挂非标端口
SSang
2021-06-10 10:10:03 +08:00
@jeeyong 我试了一下,rclone 体感确实更快一点,raildrive 连接建立的很慢不知道是什么原因,我现在改用 sshfs 了,相当于插件的方式,好处是可以同样使用 windows 的映射网络驱动器的方式去挂非标端口,也不用去写什么开机启动的脚本了,使用起来感觉上就和 smb 一样。
SSang
2021-06-10 10:13:42 +08:00
@jasonyang9 谢谢,虽然是安卓的,不过给了我一个思路,其实在 windows 上装 nginx 就好了啊,我之前思路还一直局限与服务端,在 windows 上直接做端口转发然后用标准端口去连接非标端口的服务器就好了,一直都没想到。
jasonyang9
2021-06-10 15:37:24 +08:00
@SSang 棒,很好的点子
justaname
2021-10-26 15:16:56 +08:00
@SSang 都不需要 nginx ,只用 netsh 写一行端口转发就行了呀
martint028
2023-03-10 11:57:12 +08:00
@justaname 借思路用 GPT 解决了:
您可以使用 Netsh 命令的 Portproxy 模式来配置 Windows 中的端口转发 (woshub.com) (woshub.com) (bobcares.com)。要把 SMB 的 445 端口转换成其他端口 45454 ,您可以在管理员权限下打开命令提示符,然后运行以下命令:

netsh interface portproxy add v4tov4 listenport=45454 listenaddress=本地地址 connectport=445 connectaddress=SMB 服务器地址

其中,本地地址是您当前运行端口转发的计算机的 IP 地址,SMB 服务器地址是您要访问的 SMB 服务器的 IP 地址 (woshub.com) (woshub.com) (bobcares.com)。例如,如果您当前计算机的 IP 地址是 10.10.1.110 ,而 SMB 服务器的 IP 地址是 10.10.1.120 ,那么您可以运行以下命令:

netsh interface portproxy add v4tov4 listenport=45454 listenaddress=10.10.1.110 connectport=445 connectaddress=10.10.1.120

这样,当您访问本地计算机上的 45454 端口时,就相当于访问了 SMB 服务器上的 445 端口 (serverfault.com)。
xiaguoxin
267 天前
虽然很久了。找了一个方法,正在尝试。https://www.bilibili.com/read/cv10636456/

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/780771

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX