kdump内核转储
CentOS 7.5 配置Kdump
安装Kdump
~]# yum install kexec-tools
安装Kdump图形化
~]# yum install system-config-kdump
配置保留内存
~]# vim /etc/default/grub # 修改crashkernel=auto
GRUB_CMDLINE_LINUX="crashkernel=128M rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet"
~]# grub2-mkconfig -o /boot/grub2/grub.cfg
~]# reboot
auto- 根据系统中的总内存量自动配置保留内存(配置之后未知错误,暂不配!!!)128M- 保留128 MB内存512M-2G:64M,2G-:128M- 如果系统内存总量为512MB或者更高且低于2GB,则保留64MB内存,如果内存总量超过2GB,则保留128MB128M@16M- 保留从16MB(物理内存0x01000000)开始的128MB内存。如果offset参数设置为0或完全省略,则会自动偏移保留的内存,如上所述,当设置可变存储器保留时,也可以使用该语法,在这种情况下,始终指定偏移量(例如512M-2G:64M,2G-:128M@16M)
配置kdump类型
修改配置文件/etc/kdump.conf
核心转储到本地
path /usr/local/cores
核心转储到设备
raw /dev/sdb1
使用NFS指定核心转储
nfs pengunin.example.com:/export/cores
使用SSH指定核心转储
ssh user@address
sshkey /root/.ssh/id_rsa
配置核心收集器
core_collector makedumpfile -l --message-level 1 -d 31
配置默认操作
default reboot
启动服务
systemctl enable kdump.service
systemctl start kdump.service
测试Kdump配置
~]# systemctl is-active kdump # 确认服务正在运行
active
~]# echo > /proc/sys/kernel/sysrq;echo c > /proc/sysrq-trigger
分析核心转储
安装崩溃分析工具
yum install crash
安装内核相应包
首先使用命令
uname -r得到自己的内核版本然后访问网站下载两个包http://debuginfo.centos.org/7/x86_64/
- 例如,内核版本
3.10.0-862.14.4.el7.x86_64就下载如下两个包 kernel-debuginfo-3.10.0-862.14.4.el7.x86_64.rpmkernel-debuginfo-common-x86_64-3.10.0-862.14.4.el7.x86_64.rpm
- 例如,内核版本
注意,如果你的内核没有更新,和镜像的版本一致,直接使用光盘镜像的包即可
开始安装
yum localinstall kernel-debuginfo-*
运行崩溃实用程序
crash /usr/lib/debug/lib/modules/3.10.0-862.14.4.el7.x86_64/vmlinux /var/crash/127.0.0.1-2018-11-15-23\:46\:16/vmcore
查看信息
显示消息缓冲区
crash> log
# help log 有更多的信息
显示内核堆栈跟踪
crash> bt
# help bt 有更多的信息
显示进程状态
crash> ps
# help ps 有更多的信息
显示虚拟内存
crash> vm
# help crash 有更多的信息
显示打开的文件
crash> files
# help files 有更多的信息
退出实用程序
quit
kdump内核转储的更多相关文章
- Ubuntu的内核转储工具【转】
转自:http://www.cnblogs.com/wwang/archive/2010/11/19/1881304.html 在我的上一篇博文<Linux内核的Oops>的最后介绍到一个 ...
- kdump内核
什么是kdump? kdump 是一种先进的基于 kexec 的内核崩溃转储机制.当系统崩溃时,kdump 使用 kexec 启动到第二个内核.第二个内核通常叫做捕获内核,以很小内存启动以捕获转储 ...
- 关于内核转储(core dump)的设置方法
原作者:http://blog.csdn.net/wj_j2ee/article/details/7161586 1. 内核转储作用 (1) 内核转储的最大好处是能够保存问题发生时的状态. (2) 只 ...
- Linux mint启用内核转储
1.查看当前是否启动了内核转储: star@sky:~$ ulimit -c unlimited 2.如果上面显示为0,即没有开启,那么,直接执行 ulimit -c unlimited 就好了. 3 ...
- 使用kdump内核调试工具遇到的问题及解决
修改linux内核代码或者内核模块的时候,搞不好就会造成linux死机崩溃,crash死机后/var/log/kern.log里面不会有任何异常信息记录.这时候kdump就会派上用场了,网上kdump ...
- 内核调试工具 — kdump & crash
kdump简介 kdump是系统崩溃的时候,用来转储运行内存的一个工具. 系统一旦崩溃,内核就没法正常工作了,这个时候将由kdump提供一个用于捕获当前运行信息的内核, 该内核会将此时内存中的所有运行 ...
- Linux内核调试:kdump、vmcore、crash、kernel-debuginfo【转】
转自:https://blog.csdn.net/guowenyan001/article/details/19807555 一.简介 linux内核发送崩溃时,kdump会生成一个内核转储文件vmc ...
- 记一次Linux内核崩溃:kdump,crash,vmcore
原理 Linux内核发送崩溃时,kdump会生成一个内核转储文件vmcore. 可以通过分析vmcore分析出内核崩溃的原因. crash是一个被广泛应用的内核奔溃转储文件分析工具.使用crash调试 ...
- Linux内核调试方法总结【转】
转自:http://my.oschina.net/fgq611/blog/113249 内核开发比用户空间开发更难的一个因素就是内核调试艰难.内核错误往往会导致系统宕机,很难保留出错时的现场.调试内核 ...
随机推荐
- [leetcode]18. 4Sum四数之和
Given an array nums of n integers and an integer target, are there elements a, b, c, and d in nums s ...
- android的事件分发传递机制
事件的分发与传递最重要的三个处理方法是 dispatchTouchEvent onInterceptTouchEvent onTouchEvent 综合来说事件的 传递是由外层向里层传递,而处理是从里 ...
- Centos7下安装Docker[z]
[z]https://www.cnblogs.com/qgc1995/p/9553572.html https://yq.aliyun.com/articles/691610?spm=a2c4e.11 ...
- 选择困难症的福音——团队Scrum冲刺阶段-Day 4
选择困难症的福音--团队Scrum冲刺阶段-Day 4 今日进展 编写提问部分 做了不同问题所对应的游戏选项,但关于游戏分类的界面还没有做完 增加功能 昨天在主界面增加"关于我们" ...
- Spring MVC 上传和下载文件
上传文件 Commons FileUpload 元件 Servlet 3.0 本地文件上传特性 HTML 5 下载文件
- Hadoop 系列(三)Java API
Hadoop 系列(三)Java API <dependency> <groupId>org.apache.hadoop</groupId> <artifac ...
- 使用RabbitMq
1.配置环境 http://www.cnblogs.com/longlongogo/p/6479424.html 2.安装RabbitMQ https://www.cnblogs.com/longlo ...
- kbmmw 做REST 服务签名认证的一种方式
一般对外提供提供REST 服务,由于信息安全的问题, 都要采用签名认证,今天简单说一下在KBMMW 中如何 实现简单的签名服务? 整个签名服务,模仿阿里大鱼的认证方式,大家可以根据实际情况自己修改. ...
- html样式板
一.bootstrap 二.element 三.iconfont图标 四.font awesome图标
- 汇编语言计算Sin,Cos,Pow函数
填了一下之前的坑.首先是一个题外话,在VS2015中默认汇编代码会使用SSE生成,如果想用FPU编译出FLD,FSTP这些指令,需要设置一下. 项目 >> 属性 >> C/C+ ...