我的14.10 Ubuntu服务器出现问题。执行某些操作后,我的apache2重新启动,出现分段错误错误。为了调试此问题,我想创建一个核心转储。我已经完成以下工作:
- 添加
CoreDumpDirectory /tmp/apache-coredumps
到配置文件 - 跑
ulimit -c unlimited
- 跑
apt-get install apache2-dbg php5-dbg
- 重新启动
apache
并导致错误。日志声称目录中可能存在核心转储,但是它是空的。
我还尝试直接在apache2的可执行文件上使用gdb,但是apache除非通过apachectl
或来启动,否则不会启动service apache2 start
。
如何获得核心转储来调试问题,或者如何gdb
直接将其附加到Apache?
对于前者,请看这里:serverfault.com/questions/470407/…对于后者,请看这里:httpd.apache.org/dev/debugging.html#gdb
—
Geek Elder Geek
不幸的是,这没有用。我尝试按照第一个链接中的建议设置权限,但是仍然没有转储内核。我已经知道第二个链接。它实际上并没有以ubuntu特定的方式回答我的问题(Ubuntu没有httpd可执行文件,并且由于前面提到的原因,直接调用apache2无效)。
—
Andreas Hartmann
也许是/ tmp中的coredump?
—
年长者怪胎
我将核心转储指定为放置在其他文件夹中,因此它不在/ tmp中。
—
Andreas Hartmann
我不想使用评估,我想在本地检查我的问题,而不是报告错误,因为它可能不是apache的错误。
—
Andreas Hartmann