首页 > 代码库 > linux下coredump的使用

linux下coredump的使用

临时性打开coredump
echo “core.%e.%p” > /proc/sys/kernel/core_pattern
ulimit  -c unlimited
%% 单个%字符
%p 所dump进程的进程ID
%u 所dump进程的实际用户ID
%g 所dump进程的实际组ID
%s 导致本次core dump的信号
%t core dump的时间 (由1970年1月1日计起的秒数)
%h 主机名
%e 程序文件名

永久打开coredump/etc/rc.local中加入echo “core.%e.%p” > /proc/sys/kernel/core_pattern
/etc/profile中加入ulimit  -c unlimited

调试-g编译的debug程序的coredumpgdb programe_file coredump_file
调试无-g编译的release程序的coredump
步骤1.相同的代码编译debug版本program_debug和release版本program_release
步骤2.objcopy --only-keep-debug program_debug symbol.dbg 用来生成生成符号表
步骤3.gdb --symbol=symbol.dbg -exec=program_release -core=coredump_file


linux下coredump的使用