首页 > 系统相关 >Linux基础——为什么Crash无法正常解析vmcore文件?

Linux基础——为什么Crash无法正常解析vmcore文件?

时间:2024-05-21 23:18:44浏览次数:14  
标签:Crash lib Xen vmlinux vmcore Linux debug 64

一、宕机主机启动项中/boot/vmlinuz与debug工具生成的vmlinux的md5值是否一致?

#### 3、通过build ID检查安装的debug和内核是否匹配:
```
# eu-readelf -n /boot/vmlinuz-3.10.0-1160.88.1.el7.x86_64

Note section [ 2] '.notes' of 380 bytes at offset 0x9cd284:
Owner Data size Type
Xen 6 <unknown>: 6
Xen 4 <unknown>: 7
Xen 8 <unknown>: 5
Xen 8 <unknown>: 3
Xen 8 <unknown>: 1
Xen 8 <unknown>: 2
Xen 42 <unknown>: 10
Xen 4 <unknown>: 9
Xen 8 <unknown>: 8
Xen 16 <unknown>: 13
Xen 4 <unknown>: 14
Xen 8 <unknown>: 12
Xen 8 <unknown>: 4
GNU 20 GNU_BUILD_ID
Build ID: 833f63306e8dc910424b14e7d2438d2697c6f7b0
#
# file /usr/lib/debug/usr/lib/modules/3.10.0-1160.88.1.el7.x86_64/vmlinux
/usr/lib/debug/usr/lib/modules/3.10.0-1160.88.1.el7.x86_64/vmlinux: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, BuildID[sha1]=833f63306e8dc910424b14e7d2438d2697c6f7b0, not stripped

 注意:当主机当前使用的内核vmlinux MD5值,与debug工具生成的vmlinux md5值一样,才能通过crash进行反编译,解析当时主机内核函数调用的真实情况;

二、crash工具使用vmlinux内核解析宕机文件vmcore

指定相应版本的vmlinux分析vmcore文件:
```
# crash vmcore /usr/lib/debug/lib/modules/3.10.0-514.el7.x86_64/vmlinux

 

标签:Crash,lib,Xen,vmlinux,vmcore,Linux,debug,64
From: https://www.cnblogs.com/gkhost/p/18205154

相关文章

  • Hooking linux内核函数(一)
    本文是《HookingLinuxKernelFunctions,Part1:LookingforthePerfectSolution》的翻译文章。前言我们最近参与了一个Linux系统安全相关项目,需要hooking几个重要的Linux内核函数调用,例如打开文件和启动进程,并利用它来启用系统活动监控并抢先阻止可疑进程。最后,我们发明......
  • Hooking linux内核函数(二):如何使用Ftrace hook函数
    本文是《HookingLinuxKernelFunctions,Part2:HowtoHookFunctionswithFtrace》的翻译文章前言Ftrace是一个用于跟踪Linux内核函数的Linux内核框架。但是,当我们尝试启用系统活动监控以阻止可疑进程时,我们的团队设法找到了一种使用ftrace的新方法。事实证明,ftrace允许......
  • Linux下处理^M字符
    1.异常情况说明:在linux下,使用rsync拉取远程服务器的代码,拉取的sh文件如下:sudorsync-avzP--exclude=*.pyc--password-file=/etc/[email protected]::backup/data/disk1正常拉取后,文件会在/data/disk1这个路径下但是拉取后,文件会在/data/disk1?这个......
  • Linux下Uart子系统驱动
    1引入UART工作原理uart硬件传输原理。s3c2440裸机编程-UART体系。2Linux下TTY驱动框架可以看到tty框架下不止包含uart,还有display设备,键盘设备。详细展开如下,tty_driver位于tty_io.c,调用底下的uart_diver位于serial_core.c。uart_driver子系统会被最底层的soc厂商拿去适......
  • 通过Ubuntu虚拟机+Linux移植LVGL并通过linux Frame buffer显示
    文章参考:https://gitee.com/socbis/linux-lvgllvglonlinuxFramebuffer主机环境:Ubuntu18.04lvgl8.0.1获取源码并运行demo获取源码需要3样东西来构建demo:lvgl核心控件库:从此处获取源码lvgl,选择版本Releasev8.0.1.显示和触摸接口层:关联图形库与硬件,源......
  • [CISCN 2022 初赛]online_crt crash漏洞引起的命令执行
    几天没做题了,有点生疏。看题吧。题目标签说是CVE-2022-1292,去看看。意思就是在$fname处构造恶意文件名导致的命令注入,而且前面没有认真过滤,也就是文件名命令执行。看看题目源码:点击查看代码importdatetimeimportjsonimportosimportsocketimportuuidfromcryptogr......
  • jmeter分布式压测(Linux版本)
    1、安装JDK并配置环境变量(此处不再赘述)2、将Jmeter上传到任意目录解压(此处不再赘述)3、配置环境变量vi/etc/profile将光标移动到最底部,插入下面的内容,exportJMETER_HOME=/home/apache-jmeter-5.1.1  #jmeter的安装目录exportCLASSPATH=$JMETER_HOME/lib/ext/ApacheJMet......
  • Linux如何给自己发邮件?
    该功能在一些定时任务报警中经常会使用到,比较实用,类似的还有发送微信消息等方式,通知给运维人员一些信息。本文以centos7.6为例1、安装mail软件CentOS/RHEL系统yum-yinstallmailxDebian/Ubuntu系统:aptinstallmailutils2、配置mail文件将以下内容添加在配置文件最下端set......
  • linux实现namespace间通信
    一目的linux实现两个namespace间通信 二操作1.逻辑①创建两个namespace②创建一对网络接口③给每个namespace分配网络接口④每个namespace设置ip,激活网卡⑤测试两个namespace能否通信  三资料Networknamespace是linux内核提供的用于实现网络虚拟化的重要......
  • windows cmd拉取linux文件夹下的文件,并解压
    前言:nginx静态文件从linux文件夹下拉取,然后放到windows下,并且解压 需要安装putty,用pscp命令del-pull.bat文件,负责删除本地文件夹下所有文件,并且拉取数据@echooffsetlocalsetFOLDER_PATH=C:\Users\admin\Desktop\yaya_nginx\web\echoDeletingfilesinfolder...rm......