今天,我 cron 并尝试检测核心转储并提醒我的东西实际上遇到了错误断言(当我在前台或后台的命令行上运行它时,通常核心会转储它)但没有核心被转储。我写了这个简单的测试:
int main
{
sleep(3);
assert(false);
}
当我编译和运行时,它会一直进行核心转储。但是当我把它放在 crontab 上时,我收到了一封来自 cron 守护进程的电子邮件,上面写着:
rocket: main.cpp:10: int main(int, char**): Assertion `false' failed.
/bin/sh: line 1: 32448 Aborted ./rocket
并且没有核心文件被放置在/cores
. 为什么会这样,我怎样才能得到我的核心?