后台守护进程实现coredump

1.在/etc/profile中加入以下一行,这将允许生成coredump文件


ulimit-c unlimited


2. 在rc.local中加入以下一行,这将使程序崩溃时生成的coredump文件位于/data/coredump/目录下:


echo "/bin/esunny.tap/core.%e.%t.%p"> /proc/sys/kernel/core_pattern 


注意rc.local在不同的环境,存储的目录可能不同,susu下可能在/etc/rc.d/rc.local


更多ulimit的命令使用,可以参考:http://baike.baidu.com/view/4832100.htm


这些需要有root权限, 在ubuntu下每次重新打开中断都需要重新输入上面的ulimit命令, 来设置core大小为无限.


不改变环境变量的命令,重启后不生效
ulimit  -c unlimited 
echo "/bin/esunny.tap/core.%e.%t.%p" >/proc/sys/kernel/core_pattern
cat /proc/sys/kernel/core_pattern


测试程序
int main()
{
 daemon(0,0);
 char *p=NULL;
 *p="123"
 return 0;


}

你可能感兴趣的:(后台守护进程实现coredump)