Linux如何安装kernel-debuginfo包以支持获取未压缩内核映像vmlinux?(yum | wget、rpm -ivh)

基础信息

  • 本文以AnolisOS为例子,Centos和Ubuntu类似,核心都是安装kernel-debuginfo和kernel-debuginfo-common的rpm包 并且需要和内核版本子版本完全一致(本质是使用同一份代码编译的)
  • 假设系统安装的是8.6版本:比如https://mirrors.openanolis.cn/anolis/8.6/isos/GA/x86_64/ 下面的AnolisOS-8.6-x86_64-dvd.iso
  • 一般kernel-debuginfo可以通过 yum install -y kernel-debuginfo进行安装
  • 如果不行就需要自行下载rpm包,然后安装。
  • 那么对应的kernel-debuginfo可以在安装包路径进行寻找,比如8.6对应的就在镜像网站的地址:https://mirrors.openanolis.cn/anolis/8.6/BaseOS/x86_64/debug/Packages/ 其实就是8.6下面相对路径的BaseOS找到对应架构的debug包里面
mirrors anolis
8.6
isos 下载镜像
GA表示 普遍可用稳定版
isos/GA/x86_64
AnolisOS-8.6-x86_64-dvd.iso
全量安装包括支持GNU模式
AnolisOS-8.6-x86_64-minimal.iso
进包括基础安装主要服务器命令行模式
AnolisOS-8.6-x86_64-boot.iso
从网络安装
BaseOS 包括源码独立包等
x86_64/debug/Packages/安装包
8.7
...

找到对应的kernel-debuginfo文件

https://mirrors.openanolis.cn/anolis/8.6/BaseOS/x86_64/debug/Packages/

  1. 根据uname查看系统的内核详细版本包括子版本,比如这里4.18.0-372.9.1
    在这里插入图片描述
  2. 根据详细版本,在网页所有2个包
    一个是以kernel-debuginfo开头的
    一个是以kernel-debuginfo-common的
    复制链接地址,然后下一步使用wget下载到本地
    在这里插入图片描述

下载rpm包与安装

# 下载rpm包
wget https://mirrors.openanolis.cn/anolis/8.6/BaseOS/x86_64/debug/Packages/kernel-debuginfo-4.18.0-372.9.1.an8.x86_64.rpm
wget https://mirrors.openanolis.cn/anolis/8.6/BaseOS/x86_64/debug/Packages/kernel-debuginfo-common-x86_64-4.18.0-372.9.1.an8.x86_64.rpm

# 安装rpm包
rpm -ivh *.rpm

实操

下载:
在这里插入图片描述
安装:
在这里插入图片描述
确认是否正确安装:
在/usr/lib/debug/lib/modules/4.18.0-372.9.1.an8.x86_64/ 目录下查看是否有vmlinux文件,因为kernel-debuginfo有一个非常重要的功能就是提供vmlinux的内核二进制文件,这也是经常需要安装kernel-debuginfo的核心需求
在这里插入图片描述

综述

  • 熟悉rpm yum原理,以及kernel-debuginfo的依赖包情况
  • 虽然yum无法使用,使用底层分析逻辑,下载rpm包,并且找到对应文件进行安装
  • 这里最难的是找到对应rpm包,这一点可以站在设计者角度,找安装系统的路径,并且多看看,想想他们会怎么维护,应该就能找到对应的debug包
  • 吐槽:目前遇到很多系统包括Centos、Ubuntu、AnolisOS对于安装kernel-debuginfo都不友好
  • 确认kernel-debuginfo是否成功安装的一个方法:/usr/lib/debug/lib下面会根据安装的kernel-debuginfo的版本创建目录,站在这个kernel-debuinfo设计者角度看,他也需要考虑多个版本的问题,那么就是创建多个版本目录,并且放到/usr/lib/debug下面,并且是作为一个库的形式提供。
  • 尝试去理解kernel-debuginfo对于成功安装他非常重要

参考

https://mirrors.openanolis.cn/anolis/8.6/BaseOS/x86_64/debug/Packages/

  • 16
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值