我正在运行一个程序,它被段错误中断了。问题是核心转储文件已创建,但大小为零。
您是否听说过这样的案例以及如何解决?
我有足够的磁盘空间。我已经执行了 ulimit -c unlimited
来限制核心文件的大小——无论是运行它还是放在提交的批处理文件的顶部——但仍然有 0 字节的核心转储文件。包含这些文件的文件夹的权限为 uog+rw,而创建的核心文件的权限仅为 u+rw。
程序是用C++写的,用Grid Engine的qsub命令提交到linux集群上,我不知道这个信息是否与这个问题相关。
最佳答案
设置 ulimit -c unlimited
打开转储生成。
默认情况下,核心转储是在 nfs 上的当前目录中生成的。
将 /proc/sys/kernel/core_pattern
设置为 /tmp/core
帮助我解决了空转储的问题。
comment from Ranjith Ruban帮助我开发了这个解决方法。
What is the filesystem that you are using for dumping the core?
关于linux - 段错误后清空核心转储文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13403824/