linux下默认是关闭core文件的生成,要想生成core文件:
一 core文件的生成
1、bsh
修改/etc/profile文件,该文件应该有类似配置:ulimit -c 20000,注释掉该配置,加以下配置:
ulimit
-c 1024 (控制core文件最大为1024K)
或
ulimit -Sc unlimited (不限制core文件的大小)
2、csh
修改/etc/csh.cshrc,加入以下配置:
limit coredumpsize 104857600
(控制core文件最大为100M)
csh下只能控制core文件的大小,如果不加控制:
limit coredumpsize
则为默认大小,在我所用的suse linux下,默认为1024K
以上修改均为root用户修改,修改后对所有用户生效,如果只想对某个用户生效,则只需修改该用户相应的配置(profile、cshrc)文件。
二、设置Core Dump文件目录和命名规则
/proc/sys/kernel/core_uses_pid可以控制产生的core文件的文件名中是否添加pid作为扩展,如果添加则文件内容为1,否则为0
/proc/sys/kernel/core_pattern可以设置格式化的core文件保存位置或文件名,比如原来文件内容是core-%e
可以这样修改:
echo
"/corefile/core-%e-%p-%t" >
core_p