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文件