求助大神,怎么不生成core文件呢?

软件和网站开发以及相关技术探讨
回复
bruce2k
帖子: 7
注册时间: 2018-02-04 16:51
系统: ubuntu 17.04

求助大神,怎么不生成core文件呢?

#1

帖子 bruce2k » 2018-06-11 21:20

最近在跑一个程序,经常在跑了总进度大约1/40发生“已杀死”但没有生成core文件的情况如图所示。我已经设置了ulimit -c unlimited,配置了core文件的路径。但在对应的目录下就是找不到core文件。

我的系统是ubuntu 18.04LST。内存很小4G

请大神指点,为什么不生成core文件?
附件
2018-06-11 21-14-22 的屏幕截图.png
头像
astolia
论坛版主
帖子: 6396
注册时间: 2008-09-18 13:11

Re: 求助大神,怎么不生成core文件呢?

#2

帖子 astolia » 2018-06-12 10:03

检查一下以下文件的值

代码: 全选

cat /proc/sys/kernel/core_pattern
cat /proc/sys/kernel/core_uses_pid
根据/proc/sys/kernel/core_pattern的内容,可能被放在了/var/crash或/var/lib/systemd/coredump
bruce2k
帖子: 7
注册时间: 2018-02-04 16:51
系统: ubuntu 17.04

Re: 求助大神,怎么不生成core文件呢?

#3

帖子 bruce2k » 2018-06-12 11:07

astolia 写了:检查一下以下文件的值

代码: 全选

cat /proc/sys/kernel/core_pattern
cat /proc/sys/kernel/core_uses_pid
根据/proc/sys/kernel/core_pattern的内容,可能被放在了/var/crash或/var/lib/systemd/coredump
这两文件的返回值如下:
cat /proc/sys/kernel/core_pattern
|/usr/share/apport/apport %p %s %c %d %P

cat /proc/sys/kernel/core_uses_pid
0
bruce2k
帖子: 7
注册时间: 2018-02-04 16:51
系统: ubuntu 17.04

Re: 求助大神,怎么不生成core文件呢?

#4

帖子 bruce2k » 2018-06-12 11:16

astolia 写了:检查一下以下文件的值

代码: 全选

cat /proc/sys/kernel/core_pattern
cat /proc/sys/kernel/core_uses_pid
根据/proc/sys/kernel/core_pattern的内容,可能被放在了/var/crash或/var/lib/systemd/coredump
在您提到的目录下没有发现core文件
附件
2018-06-12 11-14-13 的屏幕截图.png
头像
astolia
论坛版主
帖子: 6396
注册时间: 2008-09-18 13:11

Re: 求助大神,怎么不生成core文件呢?

#5

帖子 astolia » 2018-06-13 14:54

对了,你这是“已杀死”,代表进程收到了SIGKILL信号,这个信号不会产生core dump。
至于这个SIGKILL是怎么来的,根据你的情况,最有可能的是OOM Killer在内存不足的时候杀掉了进程。可以通过

代码: 全选

dmesg | grep -i kill
看有没有相关进程信息来确认。
bruce2k
帖子: 7
注册时间: 2018-02-04 16:51
系统: ubuntu 17.04

Re: 求助大神,怎么不生成core文件呢?

#6

帖子 bruce2k » 2018-06-13 21:59

astolia 写了:对了,你这是“已杀死”,代表进程收到了SIGKILL信号,这个信号不会产生core dump。
至于这个SIGKILL是怎么来的,根据你的情况,最有可能的是OOM Killer在内存不足的时候杀掉了进程。可以通过

代码: 全选

dmesg | grep -i kill
看有没有相关进程信息来确认。
@astolia Thanks a lot for your response! I add memory to my laptop, if i meet the exception again i will try your approach! my Chinese input crashed , so...
回复