解决Ubuntu 22.04频繁杀死应用的问题:关闭systemd-oomd守护进程

网友投稿 439 2022-09-21

解决Ubuntu 22.04频繁杀死应用的问题:关闭systemd-oomd守护进程

解决Ubuntu 22.04频繁杀死应用的问题

以下为关闭命令:

Ubuntu 22.04 LTS 版本带来一项新功能:默认启用 systemd-oomd 作为内存不足时的守护进程,它可以在内存高压的情况下干掉一部分进程。

然而,该 OOMD 功能似乎杀红了眼,有时候即使用户没有感到任何内存压力,它也会莫名其妙地终止正在运行的程序,比如 Firefox、Chrome 或 Visual Studio Code,体验极差的用户在 Ubuntu 社区​​邮件列表​​中大量留言吐槽。

一位沮丧的用户​​写道​​:

在杀死应用程序之前应该有一个警告,以便有机会保存应用程序数据。杀死应用程序后至少应该有道歉和解释。当前的行为给人的印象是 Ubuntu 22.04 使用起来不可靠且不安全,这对于 LTS 版本来说是个大问题。

随后,Canonical 工程师 Nick Rosbrook 在​​邮件​​中解释了 OOMD 杀死进程的条件:

条件 1:当总系统的内存使用量和交换使用量都超过 SwapUsedLimit(在 Ubuntu 上默认为 90%), cgoups 中超过 5% 的交换就会成为 OOM 的终结对象。条件 2:当一个单元的 cgroup 内存压力超过 MemoryPressureLimit ,则监控后代 cgroups 将从具有最多回收率的进程开始执行终止。

在实践中,大部分应用被杀死都是因为条件 1,很大程度上是因为 Ubuntu 只提供了 1GB 的交换空间, SwapUsedLimit 太容易达到 90%。

基于进程的终止条件,Nick 提出了一些改动的思路,比如改变 systemd-oomd 计算 / 触发内存值的方式,又或是增加 SwapUsedLimit 的值,因为 1 GB 实在太少了。

社区现已针对该问题启动了一个​​ Ubuntu 开发线程​​,征求更广泛的 Ubuntu 社区反馈,该问题应该会在 22.04.1 更新中得到解决。

相关链接

本文标题:Ubuntu 正在处理 22.04 版本频繁杀死应用的问题

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:国际足联前主席布拉特涉嫌在世界足球博物馆项目中违规被起诉!
下一篇:i.MX6ULL驱动开发 | 29 - 使用USB WIFI网卡(RTL8188EU)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~