ubuntu core 文件产生
关于内核转储的设置方法 1. 内核转储作用 (1) 内核转储的最大好处是能够保存问题发生时的状态。 (2) 只要有可执行文件和内核转储,就可以知道进程当时的状态。 (3) 只要获取内核转储,那么即使没有复现环境,也能调试。 2. 启用内核转储 1.1 查看内核转储是否有效 在终端中输入以下命令,查看内核转储是否有效。 #ulimit -c 0 -c 表示内核转储文件的大小限制,现在显示为零,表示不能用。 可以改为1G #ulimit -c 1073741824 也可以改为无限制 #ulimit -c unlimited 2.2 测试一个例子 例子的源代码: #include <stdio.h> int main(void) { int *a = NULL; *a = 0x1; return 0; } 把以上源代码,写成一个a.c文件后,编译a.c文件产生一个a.out的可执行文件: #gcc -g a.c -o a.out 修改a.out文件的权限后,执行它: #./a.out 就会显示: Segmentation fault(core dump) 这表示在当前目录下, 已经生成了a.out对应的内核转储文件。 注意:后面带有(core dump), 才说明转储文件成功生成了。 #file core* core:ELF 64-bit LSB core file x86-64,