我们在 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
。