本文将以centos系统为例,说明kdump的配置。

什么是kdump

kdump 是一种crash dump捕获机制,用来捕获kernel crash时候产生的crash dump。

kdump需要配置两个不同目的的kernel,其中一个我们在这里称作standard(production) kernel;另外一个称之为crash(capture)kernel。

standard(production)kernel,是指正在使用的kernel,当standard kernel在使用的过程中出现crash的时候, kdump会切换到crash kernel。

简单来说,standard kernel会在运行时发生crash,而crash(capture) Kernel 会被用来捕获production kernel crash时候产生的crash dump。

捕获crash dump是在新的crash(capture)kernel 的上下文中来捕获的,而不是在standard kernel上下文进行。

具体是当standard kernel方式crash的时候,kdump通过kexec(后面介绍)自动启动进入到crashkernel当中。

如果启动了kdump服务,standard kernel会预留一部分内存, 这部分内存用来启动crashkernel。

kdump机制主要包括两个组件:kdump和kexec。

什么是kexec

kexec 是一个快速启动kernel的机制,它运行在某一正在运行的kernel中,启动一个新的kernel(这里是crashkernel),而且不用重新经过BIOS就可以完成启动。因为一般BIOS都会花费很长的时间,尤其是在大型并且同时连接许多外部设备的Server上的环境下,BIOS会花费更多的时间。

内核kdump选项及其依赖选项

CONFIG_DEBUG_INFO=Y

CONFIG_CRASH_DUMP=y

CONFIG_PROC_VMCORE=y

CONFIG_KEXEC=y

kexc-tools工具安装

kdump需要安装kexec-tools-2.0.0-145.el6.x86_64.rpm工具,依赖包如下:

1. busybox-1.15.1-10.el6.x86_64.rpm

2. elfutils-libs-0.148-1.el6.x86_64.rpm

3. kpartx-0.4.9-31.el6.x86_64.rpm

注:以上安装包都在centos6的iso中。

kdump配置

修改grub.conf

kernel行增加 crashkernel=192M

注:在centos6中crashkernel=xxxM 。在centos5.2中 crashkernel=xxxM@xxM 格式请注意。default=1,表示缺省启动项为第2项(按照 0、1、2...排列)。crashkernel=128M@16M 增加的位置,在kernel 所在的行末尾加,但要放在initrd之前。

配置好grub.conf后重启机器,切换到带有crashkernel参数的内核启动。

配置vmcore保存路径

默认情况下kdump会将保存的文件保存在/var/crash目录下,可以修改kdump.conf,更改此路径。vmcore的大小与内存有关,所以一定要确保vmcore保存路径空间容量够用。

kdump服务开启

1. 执行 chkconfig --level35 kdump on

2. 执行service kdump start;显示Kdump is operational表示配置成功。

验证配置

1. 通过sysrq强制系统崩溃 echo c 〉/proc/sysrq-trigger;

2. 机器会panic重启,等待重启后,正常会在/var/crash 目录下生成一个时间目录里面有vmcore文件;

问题总结

1. 在服务开启时可能会出现Yourrunning kernel is using more than 70% of the amount of space you reserved forkdump, you should consider increasing your crashkernel reservation 的警告。需要将crashkernel的内存值需要放大即可解决警告信息。

2. 当echo c > /proc/sysrq-trigger时,可能会出现OOM的情况,这个是因为crashkernel的值太小。推荐使用192M,如还出现OOM可继续加大。

3. 在centos6.0的情况下,默认crashkernel=auto。当物理内存小于4G的情况下,这个值不管用,需给出固定的值。

linux kdump保存的目录,linux kdump搭建相关推荐

  1. linux kdump保存的目录,Linux kdump

    最近有一些老的dell机器总是莫名其妙的系统就没有反应了,查案日志系统却发现什么都没有记录,记录的只是启动后的日志,通过监控系统发现在系统在没有反应前cpu.内存.负载.流量都很正常,就是突然没有响应 ...

  2. linux安装手动划分目录,Linux目录配置整理

    FHS: 为了规范各种Linux发行版的目录配置方法和目录定义而制定了FHS规范. 在FHS规范的Linux中,所有的文件和目录都由根目录开始,即"/",它是所有文件和目录的起点. ...

  3. linux输入法软件安装目录,Linux下的文件管理与汉语输入法的安装

    #1.文件管理命令 **touch **:新建文件,修改文件时间戳 命令 用处 touch file file1 file2- 创建file file1 file2等空文件 touch file 将文 ...

  4. linux java的安装目录,linux java 安装目录

    linux java 安装目录 [2021-02-01 05:04:30]  简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace(" ...

  5. linux交换分区的目录,linux 下的交换分区及根目录

    linux下的分区情况 Linux下的交换分区 Linux系统中的Linux交换分区是当物理内存(RAM)被充满时,作为物理内存的缓存来使用.当系统需要更多的内存资源,而物理内存已经充满,内存中不活跃 ...

  6. linux终端转到目录,linux下目录及终端学习

    linux目录按调用分为相对路径与绝对路径 相对路径:从当前路径下查找查找目标也可使用./调用当前目录下文件或者../调用上一层目录中文件,可通过pwd查看当前路径 绝对路径:从根目录出发查找文件. ...

  7. linux下挂载共享目录,linux mount挂载共享目录详解

    linux mount挂载共享目录详解 这里有新鲜出炉的 Linux 常用命令,程序狗速度看过来! Linux Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 ...

  8. Linux用户密码信息存储目录,Linux用户目录

    Linux用户信息常用目录 用户信息 cat /etc/passwd root:x:0:0:root:/root:/bin/bash 账户名:密码:UID:GID(基本组):(可选)描述:家目录绝对路 ...

  9. 初学者linux查找文件安装目录,Linux查看软件安装目录及位置 方法

    对Linux了解的朋友都知道,在linux中软件一般默认都是安装在到"/usr/share"和"/usr/local"这两个路径下.但是:如果我们需要查看软件安 ...

最新文章

  1. 【ACM】杭电OJ 1096
  2. oracle中database,Oracle Database 一些基本的视图和表
  3. unicode编码转ascii编码
  4. 二十四种设计模式:访问者模式(Visitor Pattern)
  5. C - Maximize GCD(简单数论)
  6. svn在linux下的使用(svn命令行)ubuntu 删除 新增 添加 提交 状态查询 恢复
  7. 断开的管道 java.io.IOException: Broken pipe 解决方法
  8. matlab课程目的,《Matlab应用》课程教学大纲.doc
  9. EXCEL滚动表格时保持第一行标题不动
  10. SPSS计算变量(图文+数据集)【SPSS 012期】
  11. BeanDefinitionRegistryPostProcessor是什么?
  12. android svg按钮图标下载,安卓android中小图标使用优化(svg矢量图与iconfiy)
  13. 三极管的使用方法,放大,截止,饱和
  14. PDF、WORD文档快速翻译成中文的方法,帮你一键搞定!
  15. 2021年最新最全Flink系列教程_Flink快速入门(概述,安装部署)(一)(JianYi收藏)
  16. 爱看小说手机网源码全站带3w数据带采集,ThinkPHP内核小说网站源码带听书等全部插件
  17. 光猫、交换机、路由器三者的区别在哪里?如何选择?
  18. 性能测试平台搭建及简单使用(jmeter分布式+influxdb2.0+grafana)附性能测试报告
  19. e的根号x次方的不定积分:整体代换+分部积分法
  20. 海思HI3559A SDK文档说明

热门文章

  1. 浅谈React的类型检测——PropTypes
  2. 李铁谈“多规合一”:“合”在思想而非形式
  3. 数据价值安全释放 华坤道威详解隐私计算技术
  4. 基于Wemos D1的开发基础
  5. 劳务员报考建筑八大员报考加强工程施工建筑劳务管理的新举措
  6. ARM7TDMI-S核简介
  7. 程序员黄金时代再现:智能合约开发红利来袭
  8. erlang实现A星算法
  9. JVM类加载机制及源码分析
  10. TCP与UDP的区别(详解)