新闻资讯
行业资讯
香港服务器是如何设置centos 6和centos 7的内核转储的
2018-09-11 00:00:00
摘要:租香港服务器+送一个月cdn=优惠更安全,cn2直连+无需实名+性能稳定。1. 内核转储作用

(3) 只要获取内核转储,那么即使没有复现环境,也能调试。

(1) 内核转储的最大好处是能够保存问题发生时的状态。

(2) 只要有可执行文件和内核转储,就可以知道进程当时的状态。
香港服务器+送一个月cdn=优惠更安全,cn2直连+无需实名+性能稳定。1. 内核转储作用
 
(3) 只要获取内核转储,那么即使没有复现环境,也能调试。
 
(1) 内核转储的最大好处是能够保存问题发生时的状态。
 
(2) 只要有可执行文件和内核转储,就可以知道进程当时的状态。
 
centos 6 设置内核转储
 
统一命令为以下几条命令,后面是解释
 
echo "* soft core unlimited" >> /etc/security/limits.conf
 
echo "kernel.core_pattern = /tmp/core-%e-%s-%u-%g-%p-%t"  >> /etc/sysctl.conf
 
echo "fs.suid_dumpable = 2"  >> /etc/sysctl.conf
 
echo "DAEMON_COREFILE_LIMIT=’unlimited’" >> /etc/sysconfig/init
 
sysctl -p
 
编辑/etc/security/limits.conf,注意这是为所有进程设置的,但如果你有一个作为服务帐户运行的进程,请用服务帐户替换*。您必须重新启动此过程以使此更改生效。
 
编辑/etc/sysctl.conf并添加放置核心文件和任何命名标准的位置。
 
文件名变量:
 
%e是文件名
 
%g是进程运行的gid 
 
%p是进程的PID 
 
%s是导致转储的信号
 
%t是转储发生的时间
 
%u是进程运行的uid
 
编辑/etc / sysconfig / init并设置核心文件限制。
 
centos 7 设置内核转储
 
echo -e "\n# enable coredump whith unlimited file-size for all users\n* soft core unlimited" >> /etc/security/limits.conf
 
echo -e "\nkernel.core_pattern=/tmp/core-%e-%s-%u-%g-%p-%t" >> /etc/sysctl.conf
 
echo -e "1" > /proc/sys/kernel/core_uses_pid
 
sysctl -p /etc/sysctl.conf
 
2,测试是否生效
 
例子的源代码:
 
#include
 
int main(void)
 
{
 
int *a = NULL;
 
*a = 0x1;
 
return 0;
 
}
 
把以上源代码,写成一个a.c文件后,编译a.c文件产生一个a.out的可执行文件:
 
#gcc -g a.c -o a.out
 
修改a.out文件的权限后,执行它:
 
#./a.out
 
就会显示:
 
Segmentation fault(core dump)
 
这表示在/tmp目录下, 已经生成了a.out对应的内核转储文件。
 
注意:后面带有(core dump), 才说明转储文件成功生成了。
一 心网络最快的免备案服务器,全自营免备案香港服务器,CN2线路直连大陆,延迟低至15m/s,网站部署最佳兼容平台。

海外服务器免费测试http://www.755800.com/


USA-IDC为您提供免备案服务器 0元试用
立即联系在线客服,即可申请免费产品试用服务
立即申请