I am using Ubuntu 12.04 LTS. I wrote a simple program as follows to create crash
// null.c
#include
int main()
{
int *p = NULL;
int k=*p;
you do not need to use core pattern. its just dumps in that format %e.%p
what you need to do is #ulimit -c unlimited
and check #ulimit -a
and confirm if core file size is set properly. You will get the core as core.pid after that.
You need to adjust your core dump size limit with following command:
ulimit -S -c maximum-core-dump-size
The the value is given in Kb.
Your real question appears to be not "where is my core dump", but rather "how can I modify /proc/sys/kernel/core_pattern
".
sudo bash -c 'echo core.%e.%p > /proc/sys/kernel/core_pattern'
should do the trick.
My understanding is that using ulimit is not permanent, i.e. if you reboot then the limit goes back to 0. To have unlimited permanent, you need to change /etc/security/limits.conf. Similarly for core pattern etc, change /etc/sysctl.conf.