获取Ubuntu-22.04.1 对应的vmlinux文件

0.前言

🚀write in front🚀

🔎大家好,我是黄桃罐头,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流

🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝​

💬本文是我在公司工作接触到 /dev/mem 和 crash 内核调试工具时进行学习搜集到的资料,记录下来作为备忘,也希望能对大家有所帮助。📚

1.引用

Ubuntu的Kdump_ubuntu22 kdump-CSDN博客

https://superuser.com/questions/62575/where-is-vmlinux-on-my-ubuntu-installation

Ubuntu安装上的vmlinux在哪里?_ubuntu 缺少vmlinuz-CSDN博客

如何找到Linux vmlinux文件 - 问答 - 亿速云

2.正文

下载Ubuntu-22.04.1内核对应的带有调试符号信息的vmlinux文件,到如下网站下载

http://ddebs.ubuntu.com/pool/main/l/linux/

在Ubuntu-22.04中运行命令 'uname -r' 确认当前Ubuntu.22.04发行版对应的内核编译版本号

bash 复制代码
chenhaoxu@chenhaoxu-VirtualBox:~$ uname -r
5.15.0-125-generic
chenhaoxu@chenhaoxu-VirtualBox:~$

在网站列表的 '.ddeb' 文件里下载对应的符号表文件,因为我安装的Virtualbox Ubuntu.22.04 虚拟机是64位的系统所以选择'AMD64'指令集的文件。

在Ubunt-22.04里执行 'weget xxxx' 下载对应版本号的 '.ddeb'文件。(注意:一定要确保下载的.ddeb文件和你自己的Ubuntu操作系统的实际内核版本对应的上)。

bash 复制代码
wget http://ddebs.ubuntu.com/pool/main/l/linux/linux-image-unsigned-5.15.0-125-generic-dbgsym_5.15.0-125.135_amd64.ddeb

下载结束后,执行 'sudo dpkg xxx.ddeb'文件安装下载到的Ubuntu.22.04对应的内核调试文件。

这里问了下Chatgpt怎么使用 '.ddeb'文件

安装下载的Ubuntu.22.04对应的内核调试文件 '.ddeb'文件

bash 复制代码
chenhaoxu@chenhaoxu-VirtualBox:/usr/lib/debug$ sudo dpkg -i linux-image-unsigned-5.15.0-125-generic-dbgsym_5.15.0-125.135_amd64.ddeb 

等待命令执行成功

安装成功之后,就在 Ubuntu.22.04系统的 '/usr/lib/debug/boot'目录下的'vmlinux-5.15.0-125-generic'就是当前Ubuntu.22.04发行版本对应的带有调试符号信息的vmlinux文件。在使用 'crash' 工具分析 'vmcore' 文件时,就需要这个带有调试符号信息的vmlinux文件。

bash 复制代码
/usr/lib/debug/boot/vmlinux-5.15.0-125-generic
bash 复制代码
chenhaoxu@chenhaoxu-VirtualBox:/usr/lib/debug/boot$ file vmlinux-5.15.0-125-generic 
vmlinux-5.15.0-125-generic: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, BuildID[sha1]=c16e53d723223eb1435bc4c06defb030ae80d1f4, with debug_info, not stripped
chenhaoxu@chenhaoxu-VirtualBox:/usr/lib/debug/boot$
相关推荐
Harm灬小海1 小时前
【云计算学习之路】学习Centos7系统:服务搭建(VSFTP)
linux·运维·服务器·学习·云计算
minji...1 小时前
Linux 网络基础之网络IP层(十二)路由、路由表,分片和组装
linux·网络·tcp/ip·智能路由器·路由表·ip分片
猪脚踏浪1 小时前
docker 删除镜像
linux
zetion_31 小时前
uptime kuma 飞书告警
linux·飞书
志栋智能1 小时前
超自动化安全:如何降低人为操作失误风险?
运维·安全·自动化
用户805533698031 小时前
嵌入式Linux驱动开发——Pinctrl 子系统架构深度解析
linux·嵌入式
人生苦短1281 小时前
CentOS 7.9 部署 PostgreSQL 15.17 + PostGIS 3.4.8 操作文档
linux·postgresql·centos
一个心烑1 小时前
【layui页面编辑下拉框处理的三种方式】
linux·python·layui
z200509301 小时前
【linux学习】linux工具篇(下)
linux·学习
vortex51 小时前
virsh 使用指南:KVM 虚拟化管理的命令行艺术
linux·运维·服务器