首页/系统/Linux 内核与性能调优速查/vm.panic_on_oom OOM 时是否崩溃
本包目录(357 条)
sysctl 内核参数72 条
CPU 与调度60 条内存与 OOM58 条磁盘与 IO32 条网络栈调优98 条性能分析工具37 条

vm.panic_on_oom OOM 时是否崩溃

控制内存耗尽时内核行为:默认调起 OOM killer 杀进程,或配置为直接 panic(配合自动重启变成整机重启)。

参数vm.panic_on_oom
取值0 启用 OOM killer(默认) / 1 OOM 时 panic / 2 特定约束场景下 panic
排查入口dmesg 中 oom-kill 记录与被杀进程信息

查看与排查

查看与排查
sysctl vm.panic_on_oom
dmesg -T | grep -i -E 'oom|killed process' | tail
panic 会导致整机不可用(若配置 panic 自动重启则表现为重启);生产环境启用前确认可用性策略。

易错点

  • 排查 OOM 必须看 dmesg 的完整 oom-kill 段(含内存分布与被杀进程),只看监控告警会漏掉根因
  • 日志收集类进程容易被 OOM 优先选中,必要时用 oom_score_adj 保护关键进程而不是关闭 OOM killer

数据来源与参考

  • Linux 内核 Documentation/admin-guide/sysctl/vm.rst
  • man 5 proc(oom_score)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌