首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当Linux内存不足时,如何获取有关进程的更多信息?

当Linux内存不足时,如何获取有关进程的更多信息?
EN

Stack Overflow用户
提问于 2008-09-23 09:12:39
回答 3查看 1K关注 0票数 1

我最近遇到了一个问题,oom杀手在一段时间后开始杀死进程。我可以看到内存被消耗了,但当我到达服务器时,不再清楚是什么消耗了它。有没有一个很好的非显而易见的地方可以获得更多关于oom-killer的信息?例如,在激活时关于进程的详细信息,关于被杀死的进程的详细信息和选择的原因?

我正在寻找一个特定的地方来找到这些信息,特定的工具来收集它,或者一些配置来改善oom杀手的报告。我不是在找关于oom-killer的通用信息。默认情况下,/var/messages将只包含有关可用/已分配内存的详细报告,而不包含分配给它的特定进程。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2008-09-23 09:21:14

您可以查看消息日志文件,以查看哪个进程被终止以及一些相关信息。至于原因:

...理想的清理剂是最近启动的非特权进程,它和它的子进程一起使用大量内存,已经很好了,并且没有原始的I/O。类似nohup的并行内核构建(这不是一个坏的选择,因为所有的结果都保存在磁盘上,当'make‘终止时,几乎不会丢失工作)。

来自here

您可以定义一些进程,使其不受杀手的影响,在swappiness参数过低的情况下调整该参数(这会使杀手的触发器很高兴),并检查here列出的内容

票数 2
EN

Stack Overflow用户

发布于 2008-09-23 09:17:50

通常,您应该在/var/log/messages中获得一条消息,其中包含大量与oom杀手杀死的进程相关的详细信息。

票数 1
EN

Stack Overflow用户

发布于 2008-09-23 09:38:23

这并不是您问题的确切答案,但是Linux上的malloc(3)手册页提供了一些关于如何关闭内存过量使用的信息。

代码语言:javascript
复制
echo 2 > /proc/sys/vm/overcommit_memory
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/120000

复制
相关文章

相似问题

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