![我如何才能知道本地网络中哪台计算机正在访问共享?](https://linux22.com/image/1399945/%E6%88%91%E5%A6%82%E4%BD%95%E6%89%8D%E8%83%BD%E7%9F%A5%E9%81%93%E6%9C%AC%E5%9C%B0%E7%BD%91%E7%BB%9C%E4%B8%AD%E5%93%AA%E5%8F%B0%E8%AE%A1%E7%AE%97%E6%9C%BA%E6%AD%A3%E5%9C%A8%E8%AE%BF%E9%97%AE%E5%85%B1%E4%BA%AB%EF%BC%9F.png)
我有一台 Windows 7 计算机,它共享多个文件夹和文件。我还有几台其他计算机可以访问这些共享,它们都使用相同的用户名。
有什么方法可以让我看见哪一个电脑是否打开了特定文件(而不是用户)?
我知道我可以使用共享文件 MMC 管理单元,但它只显示用户名。当多台计算机有同一个用户时,该信息就没什么用了。
答案1
大多数共享监控工具都会显示 IP 地址,这足以识别计算机。如果您的 DHCP 服务器(或路由器)并不总是将相同的 IP 地址分配给相同的 MAC 地址,则您需要在网络中传递静态 IP 地址。
以下是从文章中的 7 种工具中选择的三种免费监控工具
监控共享文件夹修改或删除文件的 7 种方法。
网络共享监控
免费,但安装时请注意拒绝所有广告软件。
其使用方法在
如何监视对共享 Windows 文件夹/文件的访问
系统托盘共享监视器
双击托盘图标将显示一个小栏,其中包含连接到共享文件夹的用户和 IP 地址。双击用户名将打开另一个窗口,显示当前正在访问的文件。
答案2
如果您只愿意知道连接了哪个共享,但不知道共享中的哪个特定文件正在被访问,则如果您进入视图,MMC 管理单元会显示计算机信息Sessions
。
您还可以通过以下 powershell 查询从 WMI 获取信息(您必须以管理员身份运行 powershell 才能正常工作)
Get-WmiObject -Class Win32_ConnectionShare -Namespace root\cimv2 | Group-Object Antecedent | fl
连接的 PC 名称位于 之后的生成输出中Win32_ServerConnection.ComputerName=
,只需使用几个过滤器即可过滤出正确的部分并返回该部分,如果我明天有时间,我会用它更新帖子(除非有人拥有更好的 powershell-fu 并愿意在此之前为我更新它)。