如何获取 Apache 核心转储?

如何获取 Apache 核心转储?

我的 14.10 Ubuntu Server 出现问题。执行某些操作后,我的 apache2 会重新启动并出现分段错误。为了调试此问题,我想创建一个核心转储。我已完成以下操作:

  • 添加CoreDumpDirectory /tmp/apache-coredumps到配置文件中
  • 跑步ulimit -c unlimited
  • 跑步apt-get install apache2-dbg php5-dbg
  • 重新启动apache并导致错误。日志声称目录中可能有一个核心转储,但它是空的。

apachectl我也尝试在 apache2 的可执行文件上直接使用 gdb,但是除非通过或启动,否则 apache 不会启动service apache2 start

我怎样才能获得核心转储来调试我的问题或者如何gdb直接连接到 Apache?

答案1

ulimit -c unlimited仅影响你当前的 shell。

您可以通过查看输出来确认这一点cat /proc/$(pidof -s apache2)

我添加了ulimit -c unlimited并且/etc/default/apache2现在cat /proc/$(pidof -s apache2)/limits包括

Max core file size        unlimited            unlimited            bytes

相关内容