【一个小问题】jstat PID not found产生的原因

声明:我的文章都是在实际工作中遇到并解决问题后撰写的,可能你早就一清二楚了,也可能对你没有任何帮助,喜欢就请顶一下,不喜也请勿喷。就像足球一样, 不喜欢中国足球的就请不要关注,你可以去看乒乓球、羽毛球,甚至,冰壶!但不要去骂他们,毕竟还有很多人痴心地喜欢国足,我就是其中之一。

 

我今天遇到了一个小问题,我想用jstat命令查看tomcat进程(PID=14472)的内存使用情况,命令如下:jstat -gcutil 14472。 然后就报错了,错误提示信息为 14472 not found。用 jps命令 查看java进程ID,居然没有输出结果。但确信java进程是存在的,用 ps -ef | grep java 能看到java进程。

 

百度了下,找到了这篇文章,http://dikar.iteye.com/blog/781083 ,看完后问题就解决了,记录下来,以便日后使用。

 

原来,java进程把jvm perfdata存到了 /tmp/hsperfdata_{USER}/{PID} 文件里,我用的是ramos用户启动的tomcat,pid为14472,所以就会生成这个文件:/tmp/hsperfdata_ramos/14472 。而之前,我做过一个修改,导致ramos用户没有文件夹/tmp/hsperfdata_ramos的写权限,所以导致出现了此问题。

 

最后我用root用户登录,索性把/tmp/hsperfdata_ramos文件夹删除,然后再切换到ramos用户下,重启tomcat,让它重建/tmp/hsperfdata_ramos文件夹,问题解决!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值