Linux禁用内核转储

时间:2020-01-09 10:41:27  来源:igfitidea点击:

只有软件开发人员需要访问内核文件,而我的生产Web服务器均不需要核心转储。
如何在Debian/CentOS/RHEL/Fedora Linux上禁用核心转储以节省大量磁盘空间?
核心转储文件是可执行程序由于各种错误行为而被操作系统终止时的内存镜像。

禁用核心转储

要为所有用户禁用核心转储,请打开/etc/security/limits.conf,执行:

# vi /etc/security/limits.conf

确保存在以下配置指令:

* hard core 0

保存并关闭文件。
在/etc/security/limits.conf中设置硬限制后,用户将无法在自己的会话中增加该限制。
将fs.suid_dumpable = 0添加到/etc/sysctl.conf文件中:

# echo 'fs.suid_dumpable = 0' >> /etc/sysctl.conf
# sysctl -p

这将确保核心转储永远不会由setuid程序进行。
最后,将以下内容添加到/etc/profile中以设置软限制,以停止为所有用户创建核心转储文件(默认设置,必须将其禁用):

# echo 'ulimit -S -c 0 > /dev/null 2>&1' >> /etc/profile