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

时间:2022-06-06
本文章向大家介绍如何让所有的后台程序(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