一、简介

 分析操作系统crash或hang的原因,需要用到kernel dump。Linux系统用来捕捉kernel dump的工具是kdump。
kdump的原理是启动一个特殊的dump-capture kernel把系统内存里的数据保存到文件里,为什么需要一个特殊的dump-capture kernel呢?
因为原来的kernel已经出问题了,发生crash或hang了。Dump-capture kernel 既可以是独立的,也可以与系统内核集成在一起–这需要硬件支持relocatable kernel才行。
在X86_64系统上RHEL6/7和SLES11/12缺省都是与系统内核集成在一起的。
linux内核发送崩溃时,kdump会生成一个内核转储文件vmcore。 可以通过分析vmcore分析出内核崩溃的原因。crash是一个被广泛应用的内核奔溃转储文件分析工具。
使用crash调试内核转储文件,需要安装crash工具和内核调试工具kernel-debuginfo。kdump工作的过程如下:
系统内核启动的时候,要给dump-capture kernel预留一块内存空间;
内核启动完成后,kdump service执行 kexec -p 命令把dump-capture kernel载入预留的内存里;
然后,如果系统发生crash,会自动reboot进入dump-capture kernel,dump-capture kernel只使用自己   的预留内存,确保其余的内存数据不会被改动,它的任务是把系统内存里的数据写入到dump文件,比如/var/crash/vmcore,为了减小文件的大小,它会通过makedumpfile(8)命令对内存数据进行挑选和压缩;
dump文件写完之后,dump-capture kernel自动reboot。
Kdump 用于对内存镜像的转储,它不但可以转储内存镜像到本地

linux kdump相关推荐

  1. 多学一点(十三)——解决Linux kdump服务启动失败

    kdump 是 Linux Kernel 崩溃时的转储机制,简单理解就是在系统启动过程中如果 Kernel 因为某些原因崩溃了,kdump 就会负责记录日志以便排查原因.在 CentOS 6 等 Li ...

  2. linux kdump 分析,利用Kdump分析内核奔溃原因(1)

    机器X  Centos 5.5 X64  hadoop +mongdb+hbase 机器内核奔溃数次,日志中均查不到详细原因 逐 打算利用kdump在奔溃时转存内存.本文介绍如何开启kdump进行内存 ...

  3. Linux Kdump内核崩溃转储部署详解

    最近在回顾kdump内核崩溃转储技术,刚好可以整理下相关知识点,系统性地讲解下Kdump的部署过程以及原理. kdump内核崩溃转储技术在处理linux内核遇到宕机等异常问题中,可以将其崩溃瞬间的内存 ...

  4. linux kdump 分析工具,kdump简介

    分析操作系统crash或hang的原因,需要用到kernel dump.Linux系统用来捕捉kernel dump的工具是kdump. kdump的原理是启动一个特殊的dump-capture ke ...

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

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

  6. Linux Kdump 机制详解

    作者简介:中年码农,做过电信.手机.安全.芯片等行业,靠Linux混饭吃. 简介 Kdump 提供了一种机制在内核出现故障的时候把系统的所有内存信息和寄存器信息 dump 出来成一个文件,后续通过 g ...

  7. linux kdump保存的目录,RedHat5之Kdump 非常详细

    How do I configure kexec/kdump on Red Hat Enterprise Linux 5? Release Found: Red Hat Enterprise Linu ...

  8. linux kdump日志在哪里,kdump启动失败如何配置

    本案环境:[root@bright ~]# cat /etc/redhat-release && uname -r CentOS release 6.6 (Final) 2.6.32- ...

  9. linux开启内核kdump,linux kdump原理以及配置

    相关的原理 kexec是一个快速启动机制,允许通过已运行的内核的上下文启动一个linux内核,不需要经过BIOS.实现kdump机制的关键,包括二个组成部分:一是内核空间的系统调用kexec_load ...

  10. arm linux kdump,linux系统奔溃之vmcore:kdump 的亲密战友 crash

    crash 是目前广泛使用的 linux 内核崩溃转储文件的分析工具,掌握 crash 的使用技巧,对于分析定位内核崩溃的问题,有着非常重要的作用.本文首先介绍了 crash 的基本概念和安装方法,其 ...

最新文章

  1. 直播APP常用动画效果
  2. Dominating Patterns
  3. njust 1927 谁才是最强战舰!(anti-nim博弈论)
  4. 深入redis内部--实现双向链表
  5. 搭建DVWA漏洞环境
  6. Pandas知识点-连接操作concat
  7. oppo r9 android7.0,OPPO R9 Plus的手机系统是什么
  8. PostgreSQL判断一个表是否存在
  9. 将多个集合合并成没有交集的集合
  10. php判断版本号大小,通用javascript代码判断版本号是否在版本范围之间_javascript技巧...
  11. 为什么要用Web Service
  12. webstorm美化_webstorm:求一个黑色背景 好看的webstorm主题?
  13. java网络编程基础——TCP网络编程三
  14. omcat 7 的domain域名配置,Tomcat 修改JSESSIONID
  15. jtag接口_一份很好的JTAG完全解读资料
  16. 二叉树的非递归遍历实现
  17. Java JRE 6安全更新
  18. pyspark 数据框 更改大小写_英文字母大小写
  19. Android Studio开发工具的设置
  20. 58沈剑-数据库使用规范

热门文章

  1. openfire登录密码忘了
  2. 学习系统编程No.15【深入动静态库】
  3. 微型计算机能打游戏吗,初中“称霸”微机课的单机游戏,CS上榜,一个没玩过别说有童年...
  4. 自定义“我的文档”图标、名称
  5. 深度强化学习系列之(13): 深度强化学习实验中应该使用多少个随机种子?
  6. Debian 、Arch、 Manjaro 的区别与使用感受
  7. python3正则表达式匹配但不包括最后一个字符_正则表达式匹配不包含某些字符串的技巧...
  8. W ndows7蓝屏0x00000024,Win7系统开机蓝屏提示错误代码0x00000024的故障分析及解决方法...
  9. linux添加压缩文件tar,在linux中使用tar创建与解压文件
  10. serverlet java_转:JavaBean 、 Serverlet 总结