检测客户端是否连接到网络共享

检测客户端是否连接到网络共享

我们在 Ubuntu LTS 04.10 机器上运行 samba 和 nfs 服务器。有没有办法在服务器上检测是否有任何客户端连接到其中一个共享?客户端是 Windows 7、Linux 或 OS X 系统。

我想了解这一点,以便重新启动服务器而不打扰我的用户。

谢谢,凯瑟琳

答案1

您可以使用 smbstatus 来查看 Samba 共享。它将打印与机器、共享等连接的用户列表...

PID     Username      Group         Machine 

-------------------------------------------------------------------
  870   username1     Domain Users  machine1       (111.11.11.111)

  586   username2     Domain Users  machine2       (111.12.11.112)

使用 nfs,您可以使用 showmount 获取机器列表以及机器中已安装的共享:

showmount

Hosts on server.domain.com:

111.11.0.0/16,machine1.domain.com

111.11.0.0/16,machine2.domain.com

111.11.0.0/16,machine3.domain.com

希望能帮助到你。

干杯,

布鲁诺

答案2

您可以使用它netstat -tp | grep smbd来查看是否有任何打开的smbd连接。

tcp        0      0 lo-app-31:microsoft-ds      <ip address of the other machine>:49225 ESTABLISHED 17700/smbd
tcp        0      0 lo-app-31:microsoft-ds      <ip address of the other machine>:49222 ESTABLISHED 27256/smbd

如果是,ESTABLISHED则表示某台机器使用 TCP 连接smbd

相关内容