我有一个 Solaris 11 盒子,既可以用作小型虚拟化环境(通过 iSCSI 和 NFS)的 NAS/SAN,也可以用作全球团队的中央文件存储(通过 SMB)。它对大多数人来说都很好用,但我时不时会收到来自美国(我在英国)的几个人的报告,说他们无法访问网络共享。
Windows 报告的具体消息是:\\10.1.1.1\share is not accessible [...] The semaphore timeout period has expired.
在 Solaris 中,我启用了一些调试日志记录,并注意到当发生这种情况时,我会看到/var/adm/messages
类似以下内容的条目:
Sep 7 00:02:48 lonsbrndnas01 smbd[24587]: [ID 208731 daemon.debug] WORKGROUP <1D> flags=0x0
Sep 7 00:02:48 lonsbrndnas01 smbd[24587]: [ID 370951 daemon.debug] 10.13.111.34 ttl=300 flags=0x0 port=35328
Sep 7 00:04:39 lonsbrndnas01 smbsrv: [ID 421734 kern.notice] NOTICE: [LONSBRNDNAS01\guest]: filestream.hdr share not found
Sep 7 00:04:39 lonsbrndnas01 smbsrv: [ID 421734 kern.notice] NOTICE: [LONSBRNDNAS01\guest]: filestream.hdr share not found
和
Sep 6 20:53:12 lonsbrndnas01 smbsrv: [ID 421734 kern.notice] NOTICE: [NT Authority\Anonymous]: share access denied: IPC only
Sep 6 20:53:12 lonsbrndnas01 smbsrv: [ID 421734 kern.notice] NOTICE: [NT Authority\Anonymous]: share access denied: IPC only
Sep 6 20:53:46 lonsbrndnas01 last message repeated 2 times
通过在 Solaris 服务器上重新启动 smb 服务器守护程序可解决此问题。然后 WinXP 客户端即可访问它。
我有两个问题:
- 是什么原因造成的?
- 当 Solaris 遇到错误时,是否有任何方法可以报告连接客户端的 IP 地址?目前,很难将错误消息与客户端匹配。