我有一个在Ubuntu上运行的Samba服务器(smbd版本4.3.11)。
我无法从我局域网上的其他计算机连接到它(我尝试了一个OS X 10.12盒子和一个Windows 7盒子)
但是,我可以telnet到我的OS X的139端口,并看到smbd日志中的连接。 我可以在Ubuntu上本地连接到samba。
任何想法进一步故障排除?
有关我迄今为止所做的更多细节:
Ubuntu服务器在192.168.1.11
OS X客户端框在192.168.1.107
我将smbd上的日志级别设置为3级。
我在Ubuntu服务器上运行以下命令:
smbclient -L 192.168.1.11 -U%
这成功地返回服务器上的预期份额,并将大量的日志行打印到smbd日志中。
我在OS X框上运行以下命令:
smbutil view '//192.168.1.11'
我得到以下错误:
smbutil: server connection failed: No such file or directory
服务器上没有打印日志行。 任何尝试使用OS X Finder中的connect to server UI connect to server失败。 与Windows 7中的map network drive用户界面相同。不会发布smbd日志条目。
我在Ubuntu服务器上运行以下命令:
echo hello | telnet 192.168.1.11 139
这出现在smbd日志中:
==> /var/log/samba/log.192.168.1.11 <== [2017/07/09 03:45:41.892842, 3] ../source3/smbd/oplock.c:1310(init_oplocks) init_oplocks: initializing messages. [2017/07/09 03:45:41.892955, 0] ../source3/smbd/process.c:339(read_packet_remainder) read_fd_with_timeout failed for client 192.168.1.11 read error = NT_STATUS_END_OF_FILE. [2017/07/09 03:45:41.893288, 3] ../source3/smbd/server_exit.c:252(exit_server_common) Server exit (failed to receive smb request) ==> /var/log/samba/log.smbd <== [2017/07/09 03:45:41.892646, 3] ../source3/lib/access.c:338(allow_access) Allowed connection from 192.168.1.11 (192.168.1.11)
我在OS X上运行相同的命令,并在日志中显示以下内容:
==> /var/log/samba/log.192.168.1.107 <== [2017/07/09 03:47:47.151012, 3] ../source3/smbd/oplock.c:1310(init_oplocks) init_oplocks: initializing messages. [2017/07/09 03:47:47.151336, 3] ../source3/smbd/server_exit.c:252(exit_server_common) Server exit (failed to receive smb request) ==> /var/log/samba/log.smbd <== [2017/07/09 03:47:47.150839, 3] ../source3/lib/access.c:338(allow_access) Allowed connection from 192.168.1.107 (192.168.1.107)
所以,看起来OS X盒子可以连接到smbd端口,smbd正在监听。 smbd似乎在本地正确提供请求,但拒绝响应任何有效的远程请求。 我很茫然…
Samba共享目录是否具有正确的权限?
Samba的一个常见问题是共享文件夹本身没有正确的权限。 当你使你的共享目录,你应该没有Sudo。 如果你不这样做,你将不得不在事后调整所有权和权限。 注意Samba仍然执行smb共享function,但权限需要正确。