CentOS 64位 无法生成Core文件解决方法。

通常情况下,只要设置了ulimit -c unlimited,在程序崩溃后就会在当前目录下生成core文件,但最近发现在有的机器上,即使设置了上述参数也不会生成core文件。网上有人总结出一般问题出在下面四个方面:

在下列条件下不产生core文件:

( a )进程是设置-用户-ID,而且当前用户并非程序文件的所有者;

( b )进程是设置-组-ID,而且当前用户并非该程序文件的组所有者;

a,b可以通过设置/proc/sys/kernel/suid_dumpable来改变,这样suid的也可以产生core文件

( c )用户没有写当前工作目录的许可权;

( d )文件太大。core文件的许可权(假定该文件在此之前并不存在)通常是用户读/写,组读和其他读。

通过查看权限和文件大小,均没有问题。

1.因为使用的nginx,在nginx中添加参数:

worker_rlimit_core 500m;

可以生成core文件。

2.又测试了一下在 /etc/profile中添加:

ulimit -c unlimited

也可以生成core文件。

 

结论:直接运行ulimit -c unlimited有时会不生效。

你可能感兴趣的:(CentOS 64位 无法生成Core文件解决方法。)