打个比方,如果系统一旦崩溃那么正常的内核就没有办法工作了,在这个时候将由kdump产生一个用于capture当前运行信息的内核,该内核会将此时的内存中的所有运行状态和数据信息收集到一个dump
core文件中以便于RedHat工程师分析崩溃原因,一旦内存信息收集完成,系统将自动重启。这和以前的diskdump,netdump是同样道理。只不过kdump是RHEL6特有的。
查看Linux系统是否打开kdump:
执行命令:ulimit -c 如果输出为 0 ,则代表没有打开。如果为unlimited则已经打开。
临时打开/关闭Linux的Kdump方法:
ulimit-c unlimited 打开
ulimit-c 0 关闭
修改配置文件进行打开/关闭kdump方法:
1.vi/ect/profile文件在文件末尾加入新行,ulimit-s-c unlimited>/dev/null 2>&1
2.保存退出:wq!
3.执行source/etc/profile 使当期设置生效
4.通过ulimit-c 查看下是否已经成功打开。
ps看看进程状态。。然后top看看进程cpu利用率,内存占有率....确定是不是进程死了,还是cpu和内存占满了。
然后分析tail -f /var/log/messages| grep fail看看有什么线索。。。
如果分析不了,估计日志也死了,因为Linux里的日志系统syslogd和klogd都是系统服务。
所以如果真的死机,针对RHEL4系统可能要配置netdump,针对RHEL5需要配置kdump或者是xendump,这样可以尝试在系统死掉的时候把内存镜像整个抓出来分析。
注:如果经常出现这样的问题,但文本模式能用,可能是显卡问题了。。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)