查看core dump状态
在终端输入:
1
ulimit -c
输出:
1
0
说明core dump是关闭的。
打开core dump功能
临时打开-针对当前终端
使用命令:
1
ulimit -c unlimited
开启core dump功能,并且不限制core dump文件大小;如果限制大小,可以将unlimited改为文件最大值,单位KB。
永久打开
修改 /etc/profile文件,在文件末尾追加:
1
ulimit -c unlimited > dev/null 2>&1
如需要立即生效,可以执行:
1
source /etc/profile
修改core dump文件生成路径
默认core dump文件保存在当前路径下,文件名为core。修改/proc/sys/kernel/core_pattern可以控制core文件的保存位置及文件名格式:
1
2
3
4
5# core文件保存在/tmp目录下,文件名格式为"core.时间"
echp "/tmp/core.%t" > /proc/sys/kernel/core_pattern
# core文件保存在/tmp目录下,文件名格式为"core.程序名-pid-时间"
echp "/tmp/core.%e-%p-%t" > /proc/sys/kernel/core_pattern
调试core dump文件
当程序生成core文件后,可以通过gdb调试错误信息。
1
gdb 程序吗 core文件