如何让所有的后台程序(daemons)都可以产生core dumps文件?

如何让所有的后台程序(daemons)都可以产生core dumps文件?

Core dumps 默认是关闭的。强烈推荐您不要在生产机器上打开此功能。最好是在 开发的机器或者测试的机器上打开此功能。

为所有的后台程序打开core dumps功能,执行下面的步骤:

1. Edit the /etc/profile:

      vi /etc/profile

2. 替换第26行:
      ulimit -S -c 0 > /dev/null 2>&1

      替换成:

      ulimit -c unlimited >/dev/null 2>&1

3. 编辑/etc/init.d/functions, 检查第136行,应该如下:

     ulimit -S -c ${DAEMON_COREFILE_LIMIT:-0} >/dev/null 2>&1

4. 编辑/etc/sysconfig/init文件,添加下面的一行,确保全局生效:
      DAEMON_COREFILE_LIMIT='unlimited'

5. 可以针对特定的daemons进程打开core dumps的功能。编辑文件/etc/sysconfig/$daemon:

      DAEMON_COREFILE_LIMIT='unlimited'

6. 为SUID程序打开core dumps功能:
      echo 1 > /proc/sys/kernel/suid_dumpable

7. 编辑/etc/sysctl.conf,添加下面的内容:

      kernel.suid_dumpable = 1
      kernel.core_uses_pid = 1

8. 重新加载sysctl的设置:
      sysctl -p

原文地址:https://www.cnblogs.com/aquester/p/9891915.html