首页/系统/Linux 运维命令速查/场景:核心转储抓崩溃现场
进程与作业69 条

场景:核心转储抓崩溃现场

进程神秘崩溃:先确认 core 开关与落盘路径(ulimit -c、core_pattern),用 coredumpctl/gdb 看栈,比复现快得多。

Linux 运维命令速查系统更新于 2026-10-12
场景程序崩溃需要现场
组合ulimit -c + core_pattern + coredumpctl/gdb

检查与开启

检查与开启
ulimit -c                          # 0 表示不产出 core
cat /proc/sys/kernel/core_pattern   # 落盘位置/托管方式
ulimit -c unlimited                # 当前会话开启(服务需在其环境里生效)

查看现场

查看现场
coredumpctl list | tail             # systemd 托管核心转储
coredumpctl info <PID|名称>         # 基本现场
coredumpctl debug <名称>            # 进 gdb
bt                                  # gdb 里看调用栈
应用核心转储可能含敏感内存数据:文件权限与清理策略要纳入安全流程(systemd 有 Storage= 与 ProcessSizeMax= 可管)。

易错点

  • core 文件常很大:大内存进程崩溃会瞬间吃掉几 GB,先确认磁盘余量
  • 强杀(-9)不产生 core:要现场就别 -9,用 TERM/ABRT/SEGV 触发

数据来源与参考

  • man 5 core(Linux man-pages 手册)
  • man 1 coredumpctl(systemd 手册)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌