首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linux 'lsof‘命令返回大值

Linux 'lsof‘命令返回大值
EN

Unix & Linux用户
提问于 2021-04-20 08:33:04
回答 1查看 313关注 0票数 -4

我使用的是带有tomcat 9.0.24的linux服务器。当我停止tomcat服务器时,下面的输出将返回'lsof \ wc -l‘命令

代码语言:javascript
复制
fdmt@fdm-3-136 apache-tomcat-9.0.24]$ lsof | wc -l
1203
fdmt@fdm-3-136 apache-tomcat-9.0.24]$

如果启动tomcat服务器,“lsof”命令将返回大量打开的文件。请参阅下面的输出段。

代码语言:javascript
复制
[fdmt@fdm-3-136 apache-tomcat-9.0.24]$ lsof | wc -l
1203
[fdmt@fdm-3-136 apache-tomcat-9.0.24]$ ./bin/startup.sh
Using CATALINA_BASE:   /usr/local/tbx/fdmt/apache-tomcat-9.0.24
Using CATALINA_HOME:   /usr/local/tbx/fdmt/apache-tomcat-9.0.24/
Using CATALINA_TMPDIR: /usr/local/tbx/fdmt/apache-tomcat-9.0.24/temp
Using JRE_HOME:        /usr/local/java/jdk1.8.0_271/jre
Using CLASSPATH:       /usr/local/tbx/fdmt/apache-tomcat- 
9.0.24//bin/bootstrap.jar:/usr/local/tbx/fdmt/apache-tomcat-9.0.24/bin/tomcat-juli.jar
Tomcat started.
[fdmt@fdm-3-136 apache-tomcat-9.0.24]$ lsof | wc -l
30492
[fdmt@fdm-3-136 apache-tomcat-9.0.24]$

这个数值一直在缓慢增长。我使用的是红帽企业Linux (VERSION=7.0),有人会面临同样的问题吗?如果这个问题有任何解决办法,请提出建议。

EN

回答 1

Unix & Linux用户

发布于 2021-04-21 04:42:34

我在@A.BS的回答中找到了上述问题的原因,我在两个Linux服务器中启动tomcat实例后比较了lsof的输出。一个服务器返回大值(与我最初的问题相关),而第二个服务器返回的值总是小于2000。

造成这一问题的原因是在两个服务器中都有两个不同版本的“lsof”。(4.82和4.87)最新版本包括与线程相关的结果。

lsof 4.82:(无工贸署栏)

lsof 4.87:(有TID栏)

因此,如果有100个线程将显示100次相同的文件打开,(正如@A.B所提到的),这将只算作一个打开的文件。但是| wc -l返回不同线程的重复行数。(确实不正确)

票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/645913

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档