Samba 共享未通过 smbtree 看到

Samba 共享未通过 smbtree 看到

第一次编辑

我将主机名改为 7 个字符。log.nmbd 中有关无法找到服务器的错误消失了

错误 - 在子网 192.168.1.143 上的工作组 WORKGROUP 中找不到服务器 MY-FILESERVER

现在我看到出现了一个新错误:

../source3/nmbd/nmbd_browsesync.c:251(domain_master_node_status_fail)
  domain_master_node_status_fail:
  Doing a node status request to the domain master browser
  for workgroup WORKGROUP at IP 192.168.1.143 failed.
  Cannot sync browser lists.

现在,当我从机器本身运行 smbtree 时,我只能看到一个共享文件夹。此外,在 log.smbd 中,我看到了以下行:

Samba 名称服务器 IDSHARE 现在是子网 192.168.1.143 上工作组 WORKGROUP 的本地主浏览器

我猜测问题在于子网是一个单独的 IP 地址,而不是一组地址。

初始帖子

我正在配置 Samba,但遇到了很多麻烦。运行时共享机器及其共享没有出现smbtree。这是我第一次遇到这个问题,无法找出根源。所以我想你们中的一些人可以分享一些提示 ;)

在 Ubuntu 16.04 上,我安装了 Samba 4.3.9。重新启动 Samba 后, testparm返回以下配置:

# Global parameters
[global]
    netbios name = MY-FILESERVER
    server string = %h server (Samba, Ubuntu)
    server role = standalone server
    security = USER
    map to guest = Bad User
    obey pam restrictions = Yes
    pam password change = Yes
    passwd program = /usr/bin/passwd %u
    passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
    unix password sync = Yes
    syslog = 0
    log file = /var/log/samba/log.%m
    max log size = 1000
    dns proxy = No
    panic action = /usr/share/samba/panic-action %d
    idmap config * : backend = tdb


[samba_test_folder]
    comment = A test Samba share
    path = /home/myname
    read only = No
    guest ok = Yes

现在,一旦我smbtree从另一台机器运行,我就看不到实际的机器出现了。我看到局域网上的一些 Windows 机器和另一台 Samba 服务器,但不是我关心的那台。

错误日志

我检查了日志,发现下面log.nmbd这一行出现了好几次:

[2016/08/29 16:08:34.969537,  0] ../source3/nmbd/nmbd_become_lmb.c:533(become_local_master_browser)
  become_local_master_browser: Error - cannot find server MY-FILESERVER in workgroup WORKGROUP on subnet 192.168.1.143

这是我找到的主要线索。 的结果是否可能 hostname必须与 netbios 服务器匹配? 我读到 netbios 仅使用 16 个或更少字符的名称(来源)。hostname在我遇到问题的机器上,返回一个包含超过 16 个字符的名称。

检查正在运行的进程

我以为这可能是防火墙问题,但却iptables -L返回了一个空的规则表。

我检查了进程是否在正常监听。我用nmap -PN 192.168.1.143(使用本地 IP 地址) 扫描了端口,得到了:

PORT    STATE SERVICE
22/tcp  open  ssh
139/tcp open  netbios-ssn
445/tcp open  microsoft-ds
MAC Address: 00:13:72:D6:5A:BA (Dell ESG Pcba Test)

我仔细检查了机器本身netstat -plunt,似乎确认了一切运行正常:

Proto Recv-Q  Send-Q  Local Address           Foreign Address         State       PID/Program name
tcp        0       0  0.0.0.0:139             0.0.0.0:*               LISTEN      4837/smbd       
tcp        0       0  0.0.0.0:22              0.0.0.0:*               LISTEN      2335/sshd       
tcp        0       0  0.0.0.0:445             0.0.0.0:*               LISTEN      4837/smbd  
udp        0       0  192.168.255.255:137     0.0.0.0:*                           4789/nmbd       
udp        0       0  192.168.1.143:137       0.0.0.0:*                           4789/nmbd       
udp        0       0  0.0.0.0:137             0.0.0.0:*                           4789/nmbd       
udp        0       0  192.168.255.255:138     0.0.0.0:*                           4789/nmbd       
udp        0       0  192.168.1.143:138       0.0.0.0:*                           4789/nmbd       
udp        0       0  0.0.0.0:138             0.0.0.0:*                           4789/nmbd   

发生故障的机器有固定的IP地址,并与 报告的MAC地址相匹配nmap,单台机器运行时会响应这个IP nmap -sP 192.168.1.0/24

我远非 Samba 和 Linux 方面的专家,所以我可能错过了一些显而易见的东西。

答案1

看起来,当通过网络接口定义静态 IP 时,Samba 会遇到麻烦。 https://ubuntuforums.org/archive/index.php/t-844604.html

接口定义不明确,添加后网络 192.168.1.0它按预期工作,并且共享出现在smbtree

相关内容