例如,如果我通过 samba 连接在 winxp 计算机上打开了一个 word 文档,那么在 linux 级别我可以使用什么命令来查找哪些进程打开了该文件,以便我可以终止它们,还有我怎样才能终止特定的 samba 用户。在我的例子中,如果我执行 lsof|grep,然后终止包含文件名的进程,看起来 linux 认为该文件未打开,但在 windows 计算机上我没有丢失与 samba 连接的连接,所以 windows 计算机认为一切正常,所以如果我将有问题的文件从另一台计算机复制到服务器,然后原始 windows 计算机进行保存,它将删除我的副本,我怎样才能从 linux 计算机终止该用户的 samba 进程,以便他们无法保存我在 linux 级别关闭的他们打开的文件。
答案1
您可以使用 smbstatus 列出进程:
$ smbstatus -p
Samba version 3.0.33-0.18.el4_8.1
PID Username Group Machine
-------------------------------------------------------------------
9672 george george gb (192.168.2.41)
14452 andrew andrew dev (192.168.11.6)
17282 bob bob abcde (192.168.2.11)