Mac Catalina 核心文件位置
Posted
技术标签:
【中文标题】Mac Catalina 核心文件位置【英文标题】:Mac Catalina corefile locations 【发布时间】:2019-11-13 19:29:08 【问题描述】:我有一个在 Mac Catalina 下出现段错误的程序,但核心文件没有显示在 /cores 中。我检查以确保核心文件大小不受限制,并且通过创建 /etc/launchd.conf 文件(其中包含“限制核心无限”)和执行“launchctl”来启用核心文件。这些都没有任何效果。
有人知道如何在 Catalina 下重新启用核心文件,和/或它们的存储位置吗?
【问题讨论】:
【参考方案1】:我最近升级到了 macOS Catalina,尽管sysctl -a
报告了预期的kern.corefile: /cores/core.%P
和kern.coredump: 1
,但我仍然无法获得核心转储,这让我感到很困惑。并在我的交互式 shell 中运行 ulimit -c unlimited
。我最终将问题追溯到具有rwxr-xr-x
权限的/cores 目录。一旦我完成了sudo chmod 1777 /cores
,我就能够以非 root 用户身份创建核心转储。
【讨论】:
【参考方案2】:看来/bin/
中的文件是不允许抛核的。
如果您将sleep 50000&
调用到kill -11 %1
,则不会生成核心转储。
如果您事先将程序复制到/tmp/
,它会。
因此,使用 SIG11 终止睡眠以验证核心文件生成的有用技巧不会轻易奏效。
似乎在同一外壳中杀死后台进程并不会在所有情况下产生核心转储。
【讨论】:
以上是关于Mac Catalina 核心文件位置的主要内容,如果未能解决你的问题,请参考以下文章
(Mac) 将核心文件留在可执行文件所在的位置,而不是 /cores?
tomcat的配置文件server.xml不支持中文注释的解决办法