我有一个关于在 Debian 下生成核心转储的问题。
首先,我通过以下命令启用该功能:
ulimit -c unlimited
接下来我创建一个分段错误,但出现此错误:
[107356.139862] level0[5616]: segfault at 61616161 ip 61616161 sp bffff730 error 14
[107356.139877] Pid 5616(level0) can only dump core to fully qualified path!
[107356.139879] Skipping core dump
我收到此消息:
dmesg
“只能将核心转储到完全合格的路径!”这是什么意思?
谢谢朋友们
答案1
核心转储存储在kernel.core_pattern
sysctl 配置的位置。例如:
# sysctl kernel.core_pattern
kernel.core_pattern = /var/log/core/core.%t.%e.%p
在某些情况下,core_pattern必须是完整路径,以 开头/
。因此,如果设置只是显示core
或core.%p
(指当前目录),则需要使用 进行调整sysctl
。