Ubuntu内核调试 demo ubuntu part1

准备工作

一般对于 16.04 LTS 版本已经开启了内核调试支持。可以查看/boot目录下的编译选项文件来确认一下:
(搞事情前最好先打个快照)

zhangji16@zhangji16vm:/boot$ uname -a
Linux zhangji16vm 4.4.0-139-generic #165-Ubuntu SMP Wed Oct 24 10:58:50 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
zhangji16@zhangji16vm:/boot$ cat config-4.4.0-139-generic | grep -i "GDB"
# CONFIG_CFG80211_INTERNAL_REGDB is not set
CONFIG_SERIAL_KGDB_NMI=y
CONFIG_GDB_SCRIPTS=y
CONFIG_HAVE_ARCH_KGDB=y
CONFIG_KGDB=y
CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS is not set
CONFIG_KGDB_LOW_LEVEL_TRAP=y
CONFIG_KGDB_KDB=y

下载符号文件

要调试内核 , 最好要有内核符号表 , 所以需要下载一下
lsb_release -c命令用来获取当前Ubuntu的开发代号,用于在符号服务器中寻找所需符号包

zhangji16@zhangji16vm:/usr/lib/debug$ codename=$(lsb_release -c | awk  '{print $2}')
zhangji16@zhangji16vm:/usr/lib/debug$ sudo tee /etc/apt/sources.list.d/ddebs.list << EOF
> deb http://ddebs.ubuntu.com/ ${codename}      main restricted universe multiverse
> deb http://ddebs.ubuntu.com/ ${codename}-security main restricted universe multiverse
> deb http://ddebs.ubuntu.com/ ${codename}-updates  main restricted universe multiverse
> deb http://ddebs.ubuntu.com/ ${codename}-proposed main restricted universe multiverse
> EOF
[sudo] zhangji16 的密码: 
deb http://ddebs.ubuntu.com/ xenial      main restricted universe multiverse
deb http://ddebs.ubuntu.com/ xenial-security main restricted universe multiverse
deb http://ddebs.ubuntu.com/ xenial-updates  main restricted universe multiverse
deb http://ddebs.ubuntu.com/ xenial-proposed main restricted universe multiverse
zhangji16@zhangji16vm:/usr/lib/debug$ cat /etc/apt/sources.list.d/ddebs.list 
deb http://ddebs.ubuntu.com/ xenial      main restricted universe multiverse
deb http://ddebs.ubuntu.com/ xenial-security main restricted universe multiverse
deb http://ddebs.ubuntu.com/ xenial-updates  main restricted universe multiverse
deb http://ddebs.ubuntu.com/ xenial-proposed main restricted universe multiverse

添加访问符号服务器的密钥文件

zhangji16@zhangji16vm:/usr/lib/debug$ wget -O - http://ddebs.ubuntu.com/dbgsym-release-key.asc | sudo apt-key add -
--2018-12-21 15:38:15--  http://ddebs.ubuntu.com/dbgsym-release-key.asc
正在解析主机 ddebs.ubuntu.com (ddebs.ubuntu.com)... 91.189.94.8
正在连接 ddebs.ubuntu.com (ddebs.ubuntu.com)|91.189.94.8|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度: 2471 (2.4K) [text/plain]
正在保存至: “STDOUT”

-                      100%[============================>]   2.41K  --.-KB/s    in 0s      

2018-12-21 15:38:16 (356 MB/s) - 已写入至标准输出 [2471/2471]

OK

执行sudo apt-get update更新

zhangji16@zhangji16vm:/usr/lib/debug$ sudo apt-get install linux-image-`uname -r`-dbgsym

未完待续

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值