小编Joe*_*Joe的帖子

如何配置 Linux 自行调用 oom_kill

我不希望我的计算机将数据交换到磁盘。我没有交换分区:

美元免费
             缓存的已用空闲共享缓冲区总数
电话:3841912 3670012 171900 0 74980 699652
-/+ 缓冲区/缓存:2895380 946532
交换:0 0 0

回到当天(也许最近是内核 2.4?)这曾经有效。内存饥饿的进程将被 oom 杀手杀死,我会重新启动它们。但是现在(Linux 2.6.38-8-generic #42-Ubuntu SMP Mon Apr 11 03:31:24 UTC 2011 x86_64)google-chrome(13.0.782.24 beta)定期将我的机器发送到交换的死亡螺旋中。或者至少感觉像是交换的东西:X 窗口需要永远更新,磁盘驱动器嗡嗡作响,gnome 面板内存图表达到顶峰,我在系统日志中看到以下消息:

rtkit-daemon[1771]:金丝雀线程显然正在挨饿。采取行动。
rtkit-daemon[1771]:降级已知的实时线程。
...

但是,根据 syslog,内核并没有运行 oom 杀手。为了更好地衡量,我将swappiness设置为0:

$ cat /proc/sys/vm/swappiness
0

我的解决方法是在这种情况开始发生时使用 ctrl-alt-sysrq-f。在这种情况下,有人有将 Linux 配置为自行运行 oom_kill 的秘诀吗?

linux swap

8
推荐指数
2
解决办法
3076
查看次数

标签 统计

linux ×1

swap ×1