Nohang 是一个 Linux 守护程序,也是一个高度可配置的 OOM(内存溢出)阻止工具,适用于 Linux 系统,能够有效地防止内存不足的情况。
部分功能特性
具有良好注释的配置文件,配置方面(配置中有 38 个参数)
可以将 SIGKILL 和 SIGTERM 作为发送给 victim 的信号
支持 zram(使用 mem_used_total 作为触发器)
可定制的监控强度
桌面通知:用于预防 OOM 和警告内存不足
……
输出示例
MemAvail: 2976 M, 50.6 % | SwapFree: 10758 M, 100.0 % MemAvail: 0 M, 0.0 % | SwapFree: 10281 M, 95.6 % MemAvail: 0 M, 0.0 % | SwapFree: 9918 M, 92.2 % MemAvail: 0 M, 0.0 % | SwapFree: 8659 M, 80.5 % MemAvail: 0 M, 0.0 % | SwapFree: 7235 M, 67.3 % MemAvail: 19 M, 0.3 % | SwapFree: 6851 M, 63.7 % MemAvail: 0 M, 0.0 % | SwapFree: 5780 M, 53.7 % MemAvail: 0 M, 0.0 % | SwapFree: 5008 M, 46.6 % MemAvail: 0 M, 0.0 % | SwapFree: 4199 M, 39.0 % MemAvail: 0 M, 0.0 % | SwapFree: 3502 M, 32.6 % MemAvail: 0 M, 0.0 % | SwapFree: 2929 M, 27.2 % MemAvail: 0 M, 0.0 % | SwapFree: 2446 M, 22.7 % MemAvail: 0 M, 0.0 % | SwapFree: 2093 M, 19.5 % MemAvail: 0 M, 0.0 % | SwapFree: 1573 M, 14.6 % MemAvail: 0 M, 0.0 % | SwapFree: 1320 M, 12.3 % MemAvail: 0 M, 0.0 % | SwapFree: 1117 M, 10.4 % MemAvail: 0 M, 0.0 % | SwapFree: 943 M, 8.8 % 2018-07-06 Fri 03:04:37 MemAvailable (0 MiB, 0.0 %) < mem_min_sigterm (588 MiB, 10.0 %) SwapFree (943 MiB, 8.8 %) < swap_min_sigterm (1076 MiB, 10.0 %) Preventing OOM: trying to send the SIGTERM signal to tail, Pid: 14636, Badness: 777, VmRSS: 4446 MiB, VmSwap: 8510 MiB Success MemAvail: 173 M, 2.9 % | SwapFree: 3363 M, 31.3 % MemAvail: 4700 M, 80.0 % | SwapFree: 8986 M, 83.5 % MemAvail: 4668 M, 79.4 % | SwapFree: 8997 M, 83.6 % MemAvail: 4610 M, 78.5 % | SwapFree: 9024 M, 83.9 %
环境要求
Linux 3.14+
Python 3.4+
注意:该程序尚未发布稳定版本,请谨慎使用。