linux排查系统崩溃原因

原创 zhaoshuman  2026-05-22 10:16:25  阅读 15 次 评论 0 条
摘要:

快速通过日志判断系统崩溃原因,通常是因为应用内存泄漏引起,可通过系统日志进行排查

一、快速看系统崩溃、OOM(内存溢出)日志

1. 查看最近系统崩溃、内核日志(最常用)

dmesg -T | grep -i "out of memory\|oom\|killed process"

出现 Out of memory: Kill process → 就是内存不够,系统主动杀掉应用

会显示:哪个 PID、哪个程序、占用多少内存

2. 查看系统日志(journalctl,systemd 日志)

# 看最近崩溃前后日志

journalctl -b -1 -e

# 过滤内存被杀进程

journalctl | grep -i oom

-b -1:上一次开机的日志

-b:当前开机日志

3. 查看 /var/log 传统日志

# 系统内核日志

cat /var/log/kern.log | grep -i oom

# 通用系统日志

cat /var/log/syslog | grep -i memory\|oom\|killed

二、查看哪个应用长期吃内存

1. 看内存使用历史

sudo apt install sar

# 看今天全天内存、进程占用

sar -r
sar -u

2. 查看最近崩溃前进程内存快照(coredump)

# 查看是否生成崩溃文件

ls /var/lib/apport/coredumps/

Ubuntu 默认有 Apport 崩溃报告服务,可以直接看:

apport-cli

三、定位内存崩溃的完整排查步骤

先看是不是系统 OOM 杀掉进程

dmesg -T | grep -i oom

系统重启过 → 看上次开机日志

journalctl -b -1 | grep -E "memory|oom|killed"

查应用自身日志(比如 Java、Python、数据库)

程序自己的 log 目录

/var/log/ 下对应服务日志


本文地址:https://zhaoshuman.cn/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/18.html
免责声明:本文为原创文章,版权归 zhaoshuman 所有,欢迎分享本文,转载请保留出处!
NEXT:已经是最新一篇了

发表评论


表情

还没有留言,还不快点抢沙发?