Mac OS X如何知道哪些程序正在使用已安装的文件系统?

awi*_*ebe 9 macos stat osx-snow-leopard unmount

这可能听起来像一个愚蠢的问题,但直到最近,如果你试图卸载正在使用的卷,Finder报告它正在使用,但不是由谁.这是简单的Unix功能,如果文件在挂载点上打开,则不允许它弹出.但是现在他们似乎添加了一些功能,让用户知道当前正在使用已安装系统的程序,我一直在查看Unix的操作系统(Linux发行版)的fopen,stat等手册页,我可以似乎找不到类似的功能.

这个功能是专门的,还是我只是在错误的地方?

Jon*_*pan 5

有 BSD 级别的调用(主要是lsof,其来源位于http://www.opensource.apple.com/source/lsof/)可让您检查进程中打开的文件列表。例如,活动监视器使用它们。

使用lsof为出发点,您可以通过迭代的过程,看看其中是否正在使用你检查挂载点下的文件。不过,可能有更有效的方法来做到这一点,我不知道。:)