OS X确定哪个应用程序正在访问HDD并阻止弹出?


17

我正在运行OS X 10.6 Server,我想弹出外部驱动器,以便进行磁盘维护,例如对其进行碎片整理。但是,当我尝试弹出驱动器时,它无法显示磁盘正在使用中。我可以强行弹出它,但可能导致损坏...如何确定哪个应用程序正在使用驱动器并将其保持打开状态?

Answers:


25

尝试使用sudo lsof | grep /Volumes/External,其中“外部”将是您的外部驱动器的名称。您是否正在从该驱动器托管任何服务的数据?


只是一些共享文件夹,但是我知道网络上的所有客户端都弹出了这些共享和整个服务器。
jamone 2010年

并不总是很重要。有时AFP / SMB / NFS / FTP / etc进程会因为服务正在运行而留下打开的文件。最好的选择是尝试停止该服务,然后弹出。那将比使用上面的命令和更好kill -9。您可以通过命令行通过停止服务sudo serveradmin stop smb,然后通过启动服务sudo serveradmin start smb,其中“ smb”是服务的名称。 sudo serveradmin list将全部显示。
churnd 2010年

通常,它是Spotlight索引的东西!
JGFMK,

5

lsof-打开的文件列表

在命令提示符下,只需键入sudo lsof即可查看打开文件的列表及其位置和进程ID,以便您可以杀死该进程。

要稍微完善一下,可以使用sudo lsof | grep hard drive name

一旦有了pid sudo kill -9 pid即可杀死顽皮的进程。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.