![为什么 Linux 内核会转储。核?](https://linux22.com/image/9593/%E4%B8%BA%E4%BB%80%E4%B9%88%20Linux%20%E5%86%85%E6%A0%B8%E4%BC%9A%E8%BD%AC%E5%82%A8%E3%80%82%E6%A0%B8%EF%BC%9F.png)
我正在使用 Linux 4.0.6,并且我已经激活了 coredump 并使用%e.core
模式。在我的机器上,我<unset>.core
在 core 文件夹中看到。有人可以解释一下这是什么<unset>
意思以及如何防止这种情况吗?
答案1
核心模式中的 %e 映射到可执行文件名,本质上相当于comm
/proc 中的字段。在某些情况下,内核内部进程结构中的该字段可以为空(即,如果 argv[0] 为空字符串,并且在 fork() 调用期间很短的时间内),并且如果进程在这种情况下崩溃,您可以获得一个具有您指定名称的核心文件。就其价值而言,我发现 %E (可执行路径)更可靠一些,因为它不能由进程本身操纵。