144得票1回答
OOM killer是如何决定首先杀死哪个进程的?

这个答案解释了内核在遇到OOM情况时根据sysctl vm.overcommit_memory的值采取的行动。 当overcommit_memory设置为0或1时,启用overcommit,程序被允许分配比实际可用内存更多的内存。 那么在这种情况下当我们耗尽内存时会发生什么?OOM kil...

59得票5回答
在Linux Mint上调试“Web Content”应用程序高(接近总体)的CPU/内存使用率

我家有3台电脑都安装了Linux Mint,但只要打开Firefox,它们就几乎无法使用。以下是top命令的输出: 正如你所看到的,"Web Content" 和 Firefox 共同占用了我几乎所有的 CPU 资源,以及超过50% (4GB+) 的系统内存。 在过去的使用 Debia...

53得票2回答
使用/var/log/messages调试内存不足问题

我在我的消息日志中收到了以下报告: kernel: Out of memory: Kill process 9163 (mysqld) score 511 or sacrifice child kernel: Killed process 9163, UID 27, (mysqld) tot...

49得票3回答
OOM killer工作不正常,导致操作系统冻结。

多年来,我的操作系统的OOM killer无法正常工作,导致系统冻结。 当内存使用率非常高时,整个系统往往会变得“冻结”(实际上是变得极其缓慢)长达数小时甚至数天,而不是通过终止进程来释放内存。 我记录到的最长时间是7天,在那之后我只能重置操作系统。 当即将达到OOM时,iowait非常高(约...

27得票3回答
什么是“内存不足”消息:牺牲孩子?

我的电脑最近因为在处理大型地理信息系统数据时编译软件而导致内存不足,这并不出乎意料。在系统日志中详细记录了它处理内存不足情况的过程,其中有以下一行内容: Out of memory: Kill process 7429 (java) score 259 or sacrifice child ...

26得票2回答
随着时间推移,内存变满,"缓冲/高速缓存"使用率高,"可用"内存较低。

每当我重新启动我的笔记本电脑时,一切都运行得非常出色,内存使用率最高为40%(8GB的内存)。然而随着时间的推移(大约使用1天),内存使用率上升到90%以上,系统开始进行交换。 现在,free -mh 返回以下结果: total used ...

22得票5回答
Python程序突然被终止

我正在运行一些相当耗费资源的Python程序。我已经运行这个脚本几个星期了,但在过去几天里,程序被终止并显示以下信息:“被杀死”。 Killed 我尝试使用8GB 创建一个新的交换文件, 但问题仍然存在。 我还尝试使用以下方法: dmesg -T| grep -E -i -B100 ...

20得票3回答
httpd的内存使用情况

对于httpd(Apache/2.2.29)的内存使用有一些问题。 随着时间的推移,httpd进程的内存使用量逐渐增加,最终达到100%。 上次我重启httpd是大约24小时前。来自free -m的输出如下: [ec2-user@www ~]$ free -m ...

20得票3回答
在OOM killer / cgroups杀死进程之前接收信号。

在我们的集群中,我们限制了我们的进程资源,例如内存(memory.limit_in_bytes)。 我认为,最终这也是通过Linux内核中的OOM killer来处理的(通过阅读源代码看起来是这样)。 有没有办法在我的进程被杀死之前得到一个信号?(就像SGE的qsub的-notify选项一...

19得票3回答
如何永久设置守护进程的OOM killer调整?

运行一些仅有单个或少数关键系统服务守护进程的Linux服务器,我想在出现异常情况时调整OOM killer对这些守护进程的处理。例如,今天有一台运行MySQL的Ubuntu服务器因为大量的apt-checker进程占用了所有内存,内核认为杀掉MySQL是个好主意,于是就杀掉了MySQL守护进程...