列出 samba 共享和当前用户

kom*_*tes 76 command-line samba smb

寻找一种从命令行执行此操作的简单方法。

列出 samba 共享以及可以访问每个共享的用户。

列出 samba 共享和当前连接到它们的用户。

列出 samba 共享和每个已建立的连接(日志,包括用户)。

有任何想法吗?您使用的任何当前可用的东西都可以为我提供将它们组合在一起所需的东西?

干杯!

Han*_*zel 40

试试smbclient -L ip_of_net_interface -U your_user_name。此选项允许您查看服务器上可用的服务。您将其用作smbclient -L host,应该会出现一个列表。


小智 36

尝试使用smbstatus,它似乎是您需要的。

  • smbstatus 仅列出当前连接。如何列出可以访问它们的所有共享和用户(即使当时未连接)? (18认同)
  • 多一点细节将不胜感激 (4认同)

小智 20

smbstatus --shares
Run Code Online (Sandbox Code Playgroud)

将检索正在共享的内容以及哪台机器(如果有)连接到什么。

  • 完美的!但它只显示我是否正在浏览共享,但如果我只是将它映射到 Windows,则不会显示。NFS 不断显示的地方,但我想那是因为 NFS 不断“挂载”,Windows 只是映射,直到访问才挂载。 (2认同)

小智 14

此外,在大多数系统上,键入testparm将为您提供有关您当前使用的机器的 samba 共享的信息。在提示符下按 Enter 键后,它还会显示 smb.conf 中每一行未注释的行,这些行可能很有用。

  • 不,`testparm` 只检查配置文件的正确性,它不显示您当前使用的内容。 (2认同)

Han*_*zel 12

试试net usershare info --long

/usr/bin/net -> /etc/alternatives/net
/etc/alternatives/net -> /usr/bin/net.samba3
Run Code Online (Sandbox Code Playgroud)
$ man net
net - Tool for administration of Samba and remote CIFS servers.
Run Code Online (Sandbox Code Playgroud)


小智 8

使用命令pdbedit.

sudo pdbedit -L -v
Run Code Online (Sandbox Code Playgroud)

在哪里-L列出用户并且-v要详细。


MSa*_*ers 5

获取用户

net rpc user
Run Code Online (Sandbox Code Playgroud)

获取每个用户的份额

更简洁比smbclient -LISnet rpc share list -U $USERNAME

您将需要两者,因为每个用户的可见共享列表不同。