![无法获取因段错误而产生的 httpd 转储](https://linux22.com/image/653405/%E6%97%A0%E6%B3%95%E8%8E%B7%E5%8F%96%E5%9B%A0%E6%AE%B5%E9%94%99%E8%AF%AF%E8%80%8C%E4%BA%A7%E7%94%9F%E7%9A%84%20httpd%20%E8%BD%AC%E5%82%A8.png)
我正在尝试排除 Apache 段故障,并尝试获取核心转储。我已按照以下说明进行操作这里但仍然没有发生。以下是我所做的,这样你就不必读完整个内容了。
httpd.conf
设置CoreDumpDirectory
为/tmp/mycoredumps
存在且归 www 所有(apache 以该用户身份运行)sysctl kern.coredump
是 1- 设置
sysctl.sugid_coredump
为 1(原为 0) - 设置
ulimit -c
为unlimited
,原为 0 - 重新启动 httpd
我以 root 身份执行了上述所有操作。再次出现段错误,然后转到,/tmp/mycoredumps
结果为空。
我使用的是 FreeBSD 8.4 和 Apache 2.4
我开始想,也许我需要
[编辑] 将 www 用户的 shell 更改为 bash,ulimit
以实际的 www 用户身份执行,所以我运行了,su www --shell /bin/bash --command "ulimit -c"
显示为This account is currently not available
。[编辑] 出现该消息是由于 www 用户的 shell 设置为 nologinsu
将其改为 bash,然后运行ulimit -c
,显示为 unlimied。