This wiki show cases how to make sure your httpd generates Core Dumps on different platforms.
Generally there are two things to make sure:
- Generating coredumps is allowed
- Generating coredumps is possible
The first is usually controlled by an Operating System facility which either globally or locally limits this ability.
The latter can either be controlled by the OS, or to a certain extend by the daemon. In Apache httpd we have CoreDumpDirectory is a hint to the daemon to chdir(2) to a directory where it can leave behind a core file.
This is, because daemons usually run in / where they do not have write permissions.
We can extend apachectl to enable coredumps by writing:
ulimit -c unlimited
Note that this is what controls core dump settings on a user/session base. For system wide settings see: /etc/security/limits.conf, respectively limits.conf(5).
sysctl -w kernel.core_pattern=/some/core/pattern
limit coredumpsize unlimited
Note that this is what controls core dump settings on a user/session base. For system wide settings see: /etc/login.conf, respectively login.conf(5), or set the kernel.coredumps to 1: