我刚买了一台路由器 ZTE F680,使用 Samba 服务器 1.9。我想使用 SMB 协议共享一个 USB 硬盘。
在路由器中,磁盘已正确连接且路径为:
/mnt/usb3_1_1
我已经禁用了 FTP 服务器。并且启用了 Samba 服务。根本没有用户和密码。路由器中没有那么多选项。
从我的 Windows 10 中,可以在“网络”中找到路由器。我可以正确访问该文件夹并查看所有文件。地址类似于
//ROUTER/samba/usb3_1_1
这证明路由器的配置是正确的。
当我启动我的 Ubuntu 16.04LTS 机器时,我尝试使用终端挂载 samba 文件夹:
sudo mount -t cifs //192.168.1.254/samba/usb3_1_1 /mnt/smb/
并要求输入密码:
Password for root@//192.168.1.254/samba/usb3_1_1:
我输入的任何密码(空、随机、路由器用户等)总是得到相同的结果。文件夹已安装,但监听的文件夹不正确:
$ a b B B B C G L P S S
如果我尝试访问cd
此文件夹中的任何内容,都会显示错误the folder does not exists
。当然,如果我将 URL 更改为无效的 URL,则不会安装任何内容。
首先,在 Windows 中不需要密码,一切都正确。在我的 Ubuntu 机器上,我也可以连接到 Windows 机器共享文件夹。因此,我的 Ubuntu 机器中似乎没有缺少任何应用程序。以前,在我的旧路由器 (TP-Link) 中,我也有类似的配置,并且运行良好。但现在,Ubuntu 或 Raspberry 机器都无法访问它。
是路由器软件问题还是 Ubuntu/Raspberry 配置问题?
我假设路由器上的 Samba 服务器 1.9 或多或少是标准的(但比较旧)。如何使用现代 SMB 客户端正确连接?
还有,为什么我挂载的文件夹中可以列出一些无效文件夹?这只是编码问题吗?
- 编辑 -
至少-o guest
在安装设备时,不需要密码。
答案1
我在使用 Ubuntu 23.10 的同款路由器 ZTE F680 时仍然遇到同样的问题。该路由器使用的 SMB 服务器看起来像是 SMB1 版本,由于安全问题,Ubuntu(或 Windows)中默认不使用该版本。
无论如何,我们可以强制使用 SMB1 版本,并将这些行添加到 /etc/samba/smb.conf 文件中。
client min protocol = NT1
重要提示:使用最小值而不是最大值!!
并且
client ntlmv2 auth = No
client lanman auth = Yes
然后在命令行中使用:
smbclient //192.168.1.1/samba -U samba
用户实际上可以是任何人,但我们使用“samba”(中兴路由器推荐),并且一旦要求输入密码,您可以使用除“空”之外的任何内容
但是文件夹再次显示不正确(只有 1 个字母,在我的情况下是“u”),但您可以访问它们。
要通过 nautilus 访问,请转到“其他位置”,然后在底部的服务器地址下添加:
smb://[email protected]/samba
或者在我的情况下,路由器中的 USB 有这个名字 USBSMB(最初是“samba_share”)
smb://samba@USBSMB/samba
有人在这个主题上取得进展吗?