我怎样才能让Linux不会崩溃而只是杀死进程?


4

Firefox(和闪存)往往随机时间咀嚼内存,导致我的计算机瘫痪,它让我疯狂等待oom_killer启动并杀死进程,[1]而我自己无法做任何事来杀死firefox 。我已经禁用了交换,但这让情况变得更糟。在杀死任何东西之前它会捶打几个小时,这没有任何意义。为什么不只是刷新一大块缓存而继续下去?

我可以禁用缓存吗?我可以让它停止颠簸吗?当我内存不足时,我只想要最大的内存耗尽。

[1]没关系它实际上并不是针对firefox,而是继续杀死X或我的桌面环境。


1
你有多少RAM?交换多少钱?最有可能的原因是它无法刷新大块并继续运行,因为当前工作集大小(在短时间内访问的内存量)超过了物理内存。我开始删除你做过的任何调整。
大卫施瓦茨

从理论上讲,你可以禁用内核的内存过量使用系统 - 这样,当Firefox咀嚼你所有的系统内存时,它应该是段错误,而不是等待OOMKiller。
1234年

1
@DavidSchwartz我不认为你读过我的问题。我有多少RAM并不重要。事情(firefox / flash)泄漏并占用了比他们应该更多的内存,我只是想让它们死掉所以我可以重新启动它们而不必等待捶打完成。我在多台机器上有这个问题,有512MB-4GB的RAM。没有交换分区,因为我不想交换东西。如果我失去记忆,我只想让事情消失。工作集大小实际上不能超过物理内存,因为没有交换。
Jayen

@ new123456我会尝试禁用它,但是如果firefox咀嚼可用内存(而不是更多),然后其他进程请求更多内存怎么办?那会在杀死firefox之前杀死其他进程,对吧?我想这是一个非常罕见的情况,所以它可能比我现在的颠簸更好。
Jayen

@ new123456看起来太多的程序依赖于能够过度使用。没有它就会崩溃。我将尝试每隔30秒放一次缓存,看看是否有帮助。
Jayen

Answers:


1

定期删除缓存。这样,当进程请求少量内存时,您的计算机并不忙于一次缓存一小部分内存。整体减慢你的电脑速度,但至少你不会坐在那里等着闪电吃你活着时捶打。

while sleep 30; do vmstat && echo 3 > /proc/sys/vm/drop_caches && vmstat; done


Nov 11 10:40:59 eeyore kernel: [604280.360966] icedove-bin invoked oom-killer: gfp_mask=0x201da, order=0, oom_adj=0, oom_score_adj=0
Nov 11 10:40:59 eeyore kernel: [604280.606183] Out of memory: Kill process 12767 (firefox-bin) score 325 or sacrifice child
Nov 11 10:40:59 eeyore kernel: [604280.607749] Killed process 12914 (plugin-containe) total-vm:187036kB, anon-rss:14488kB, file-rss:0kB
Nov 11 10:41:23 eeyore kernel: [604305.020890] Xorg invoked oom-killer: gfp_mask=0x201da, order=0, oom_adj=0, oom_score_adj=0
Nov 11 10:41:24 eeyore kernel: [604305.096299] Out of memory: Kill process 12767 (firefox-bin) score 325 or sacrifice child
Nov 11 10:41:24 eeyore kernel: [604305.096308] Killed process 482 (plugin-containe) total-vm:61124kB, anon-rss:2420kB, file-rss:0kB
Nov 11 10:41:30 eeyore kernel: [604311.107726] python invoked oom-killer: gfp_mask=0x201da, order=0, oom_adj=0, oom_score_adj=0
Nov 11 10:41:30 eeyore kernel: [604311.531604] Out of memory: Kill process 12767 (firefox-bin) score 325 or sacrifice child
Nov 11 10:41:30 eeyore kernel: [604311.533284] Killed process 12767 (firefox-bin) total-vm:1388764kB, anon-rss:659040kB, file-rss:0kB

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.