lsof在我的服务器上运行速度非常慢

我在我的Linux服务器上运行lsof来检查ext3系统中的一个文件( /tmp/incoming_data.txt )是否被其他程序打开。 我的服务器上有很多的TCP连接。 奇怪的是,执行“sudo lsof”大约需要两分钟的时间,在这两分钟内它使用了99.x%的CPU。

我使用的命令是sudo lsof /tmp/incoming_data.txt 。 我已经尝试了“ fuser ”这需要大约相同的CPU和执行时间。 有什么我可以解决这个问题吗?

如果您确定可以跳过打开的TCP或UDP连接,因为您提到的连接数太多,您可以使用lsof -X的特定于方言的选项。

  lsof -X 

阅读lsof的手册页并search“-X”以获取详细信息。

通过-n选项跳过parsingIP连接的DNS名称。 这几乎肯定会成为任何放缓的部分。