1, Core Dump 是什么
Core Dump一般我们说是核心转储,在进程异常时的一个快照,保存了异常时的内存、寄存器、堆栈等数据。这些数据存储成一个文件
2,开启 Core Dump 功能
Linux Core Dump 记录功能系统默认是未开启的状态
查看是否开启了 Core Dump 功能:
ulimit -c
如果返回 0, 则未开启该功能
临时开启:
ulimit -c unlimited
永久开启需要修改 /etc/security/limits.config 文件,增加如下图配置项即可
修改 Core Dump 文件地址, 需要修改 /proc/sys/kernel/core_pattern 配置文件
echo "/tmp/corefile-%e-%p-%t" > /proc/sys/kernel/core_pattern
写入 /tmp/corefile-%e-%p-%t 配置到文件,格式名为 core-命令名称-pid-时间戳,可以自己定义
3, 查看 Core Dump
查看 Core Dump 文件需要使用到 gdb 工具,格式为 gdb coredump 文件
gdb 工具系统默认是没有安装的, 使用 yum 安装即可
yum install gdb
gdb 调试
gdb 程序名 coredump文件