lion下似乎没有/etc/sysctl.conf
如果是linux下设置的
kernel.core_pattern=/var/core/%t-%e-%p-%c.core
kernel.core_uses_pid=0
也没有用,
sysctl -a查看所有
比如看cpu信息就
sysctl -a|grep cpu
观察core文件存在了/cores/core.%P
定义和linux不同,因为是bsd嘛
su root
ulimit -c
如果是0
则ulimit -c unlimited
写错误程序测试
gcc -g test.c
./a.out就在/cores下生成core文件了
gdb -c /cores/core.1111 ./a.out
查看错误在哪行
如果是linux下设置的
kernel.core_pattern=/var/core/%t-%e-%p-%c.core
kernel.core_uses_pid=0
也没有用,
sysctl -a查看所有
比如看cpu信息就
sysctl -a|grep cpu
sh-3.2# sysctl -a|grep core
kern.corefile = /cores/core.%P
kern.coredump = 1
kern.sugid_coredump = 0
kern.corefile: /cores/core.%P
kern.coredump: 1
kern.sugid_coredump: 0
machdep.cpu.cores_per_package: 2
machdep.cpu.thermal.core_power_limits: 0
machdep.cpu.core_count: 2
sh-3.2# 观察core文件存在了/cores/core.%P
定义和linux不同,因为是bsd嘛
su root
ulimit -c
如果是0
则ulimit -c unlimited
写错误程序测试
#include <stdio.h>
int main(void){
int *a=NULL;
*a=0x1;
return 0;
}gcc -g test.c
./a.out就在/cores下生成core文件了
gdb -c /cores/core.1111 ./a.out
查看错误在哪行

本文详细探讨了在Linux环境下配置内核核心文件路径、启用PID核心文件记录并解决设置后仍无法生成核心文件的问题。通过实例演示了如何在不同内核配置下正确设置core_pattern和core_uses_pid参数,并最终成功生成核心文件。
1447

被折叠的 条评论
为什么被折叠?



