如何在 montavista linux 上为守护进程启用核心转储?

Posted

技术标签:

【中文标题】如何在 montavista linux 上为守护进程启用核心转储?【英文标题】:How do I enable core dumps for daemon processes on montavista linux? 【发布时间】:2010-08-30 16:41:39 【问题描述】:

我不确定 *** 是否适合此问题,但由于这是针对嵌入式开发的,而且我需要也用于开发的核心转储,所以我认为这是最好的提问地点。

我正在尝试以这样一种方式启用全局核心转储,即每次程序以产生核心的方式崩溃时,它都会被写入 /foo/bar/core。每次程序崩溃时,它都会覆盖旧的核心文件。目前我尝试了以下方法:

将此添加到limits.conf

#<domain>      <type>  <item>         <value>
*               soft    core          unlimited
root            soft    core          unlimited
# End of file

将此添加到 sysctl.conf:

# Core Files
kernel.core_pattern=/mnt/ffs/core
kernel.core_uses_pid=0

这不起作用。如果我启动系统,执行sysctl -pulimit -c unlimited,然后手动重新启动进程(没有初始化脚本),我在 /foo/bar 中得到一个核心文件,但它附加了 PID。任何帮助将不胜感激。

【问题讨论】:

【参考方案1】:

我将核心模式设置为不包含任何进程相关信息,但内核仍想附加 PID,所以我最终从内核中删除了那部分代码,现在一切正常。

【讨论】:

以上是关于如何在 montavista linux 上为守护进程启用核心转储?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Linux 上为 gcc 制作一个简单的 makefile?

如何在 Alpine linux 上为 nginx 添加 Lua 模块?

如何在本地机器上为 linux 发布二进制 Python ***

如何在 linux 上为所有使用 pip 的用户安装模块?

如何在亚马逊 linux ami 上为 httpd 2.4 安装 xsendfile?

如何在 Windows 机器上为 Linux 编译 .NET Core 应用程序