我已安装了一个使用 Ubuntu Server 作为操作系统的 Samba 服务器。当计算机启动时,两者smbd
都nmbd
可以正常启动。但是,如果我转到客户端并输入:
$ smbclient -L feynman
我得到:
Enter chris's password:
Connection to feynman failed (Error NT_STATUS_UNSUCCESSFUL)
如果我随后转到服务器并重新启动smbd
服务,它就可以正常工作。
我已将服务器配置为共享 USB 驱动器;它是否有可能在 USB 驱动器可用之前启动?
我没看到有什么有趣的东西smbd.log
。
答案1
您可以使用以下命令检查 Samba 与网络接口的绑定
root@server:~# lsof -ni:139
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
smbd 2265 root 29u IPv4 13788 0t0 TCP 127.0.0.1:netbios-ssn (LISTEN)
smbd 2265 root 31u IPv6 13790 0t0 TCP [::1]:netbios-ssn (LISTEN)
这里它只绑定到环回接口并执行smbclient -L 127.0.0.1
工作。
根据您的 smb.conf(接口和仅绑定接口),如果您使用 DHCP,Samba 将仅绑定到环回接口,并在您重新启动后绑定成功。
发生这种情况的原因是 upstart 不会等待所有网络接口启动,请参阅https://askubuntu.com/a/349142/332223