通过linux中的命令行列出networking上的可用smb共享

我想知道是否有方法通过Fedora的命令行列出本地networking上的所有smb服务器(如在windows中查看networking邻居)。

    nmblookup -S WORKGROUP 

    来自: https : //web.archive.org/web/20101121043732/http : //brneurosci.org/linuxsetup38b.html

    这个命令是桑巴一个很less知道的秘密。 它将所有Samba服务器的IP地址返回到自己的广播域中:

    nmblookup __SAMBA__

    这个返回附近所有Samba服务器的所有NetBIOS名称及其别名的列表(它执行“节点状态查询” ):

    nmblookup -S __SAMBA__

    这个返回附近SMB服务器(即Linux + Unix / Samba或Windows)的所有IP地址列表:

    nmblookup '*'

    最后,所有SMB服务器(Linux + Unix / Samba或Windows)的所有NetBIOS名称和别名:

    nmblookup -S '*'


    在另一个回答nmblookup -S WORKGROUP中给出的命令不会返回所有的Samba或邻居的所有SMB服务器。 相反,它会返回碰巧是名为“WORKGROUP”的工作组成员的所有服务器的NetBIOS名称。 结果是独立于服务器的操作系统(也就是Windows,也就是Linux / Samba) – 众所周知,有时候很多Windows成员服务器都是Samba控制域或工作组的一部分。 [是的,Samba的默认工作组名称是'WORKGROUP'…但事实如此。 但是问题是我怎么才能了解​​我的networking邻居中的所有SMB(Samba?!?)服务器?

    在我的networking上 – 在撰写本文时(事情确实会改变) – smbtree是我的首选解决scheme。 它要求input你的密码(也就是你的Samba密码),然后给出一个很好的清单,包括netbios名称,可用的份额和共享描述。

    另一方面,nmblookup没有列出我networking上的所有可用共享。 我不知道为什么不这样做,但事实并非如此。

    从smbtree手册页:

    smbtree是一个在文本模式下的smb浏览器程序。 它类似于Windows电脑上的“网上邻居”。 它打印一个包含所有已知域的树,这些域中的服务器和服务器上的共享。

    nmblookup命令确实有更多的开关和选项。 nmblookup手册页: nmblookup手册页

    注意后人 – 因为这些答案确实存在 – 正如我所说,我发现smbtree将是我的networking上的OP更好的答案。

    另一种方法是通过Avahi(Bonjour),只要服务器正在发布:

     avahi-browse -r _smb._tcp 

    一个更好的方法,更恶劣的印刷,是使用smbtree。

     $ smbtree Enter user01's password: DOMAIN_A \\FREEBOX_SERVER Freebox Server \\FREEBOX_SERVER\IPC$ IPC Service (Freebox Server) \\FREEBOX_SERVER\Disque dur AutoShare of fbxhdiskd partition 2