Linux 进程被杀掉(OOM killer),查看系统日志

简介: OOM killer

基本概念:

Linux 内核有个机制叫 OOM killer (Out Of Memory killer),该机制会监控那些占用内存过大,尤其是瞬间占用内存很快的进程,然后防止内存耗尽而自动把该进程杀掉。内核检测到系统内存不足、挑选并杀掉某个进程的过程可以参考内核源代码 linux/mm/oom_kill.c,当系统内存不足的时候,out_of_memory () 被触发,然后调用 select_bad_process () 选择一个”bad” 进程杀掉。如何判断和选择一个”bad 进程呢?linux 选择”bad” 进程是通过调用 oom_badness (),挑选的算法和想法都很简单很朴实:最 bad 的那个进程就是那个最占用内存的进程。

如何查看:

grep "Out of memory" /var/log/messages

image.png

查看系统日志方法:

运行 egrep -i -r 'killed process' /var/log 命令,结果如下:

image.png

也可运行 dmesg 命令,结果如下:
image.png

相关文章
|
2天前
|
机器学习/深度学习 自然语言处理 Linux
【专栏】Linux 中的机器学习:Whisper——自动语音识别系统
【4月更文挑战第28天】本文探讨了在Linux环境下,先进自动语音识别系统Whisper的运用与实现高效ASR。Whisper基于PyTorch,支持多语言识别,具有高准确性和实时性。文中介绍了安装配置Whisper的步骤,包括安装依赖、下载代码、配置环境变量及编译安装。通过数据准备、模型训练和识别,可实现语音识别功能。Whisper适用于语音助手、翻译等领域,随着技术发展,其应用前景广阔。
|
1天前
|
Web App开发 监控 Unix
Linux 常用命令汇总(七):进程管理 & 系统权限 & 用户授权
Linux 常用命令汇总(七):进程管理 & 系统权限 & 用户授权
|
1天前
|
存储 Unix Linux
【Linux系统编程】基础指令(三)
【Linux系统编程】基础指令(三)
|
1天前
|
Linux
【Linux系统编程】基础指令(二)(下)
【Linux系统编程】基础指令(二)
|
1天前
|
Linux C语言
【Linux系统编程】基础指令(二)(上)
【Linux系统编程】基础指令(二)
|
1天前
|
Linux
【Linux系统编程】基础指令(一)(下)
【Linux系统编程】基础指令(一)
|
1天前
|
人工智能 Unix Linux
【Linux系统编程】基础指令(一)(上)
【Linux系统编程】基础指令(一)
|
1天前
|
弹性计算 Shell Linux
|
1天前
|
弹性计算 Shell Linux
|
1天前
|
弹性计算 安全 Shell
修改Linux 系统的最大打开文件数量
【4月更文挑战第29天】
11 0