在Linux上只要打开core dump文件开关,当程序crash时系统生成相应的core文件。
查看当前是否已经打开了此开关输入命令:ulimit -c 如果输出为 0 ,则代表没有打开; 如果为unlimited则已经打开。
[root@localhost ~]# ulimit -c 0
打开coredump输入命令:ulimit -c unlimited
取消coredump输入命令:ulimit -c 0
配置自动打开通过上面的命令修改后,一般都只是对当前会话起作用,当你下次重新登录后,还是要重新输入上面的命令。我们可以把通过修改 /etc/profile文件 来使系统每次自动打开。在 /etc/profile中添加ulimit -c unlimited。
coredump文件生成位置默认位置与可执行程序在同一目录下,文件名是core.xxx,其中xxx是一个数字。core dump文件名的模式保存在/proc/sys/kernel/core_pattern中,缺省值是core。
通过以下命令可以更改core dump文件的位置(如希望生成到/tmp/cores目录下); echo “/tmp/cores/core” > /proc/sys/kernel/core_pattern。
Linux开启产生coredump文件_Mr_慕白的博客-CSDN博客