【linux内核调试】- centos7安装systemtap

systemtap 是什么,看百度百科如何说的。SystemTap 是监控和跟踪运行中的Linux 内核的操作的动态方法。这句话的关键词是动态,因为SystemTap 没有使用工具构建一个特殊的内核,而是允许您在运行时动态地安装该工具。

实现方式:Kprobes 的应用编程接口(API)
必要软件:kernel-debuginfo、elfutilsRPM
作 用:监控和跟踪运行中的Linux内核
运行条件:root权限
相似技术:DTrace

上面已经说的比较清楚了,是通过Kprobes 实现的,可以监控和跟踪运行中的linux内核。 至于具体的用法下篇再整理下,这里单独说安装。

一、本机环境

[root@localhost ~]# lsb_release -a
LSB Version:    :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch
Distributor ID: CentOS
Description:    CentOS Linux release 7.4.1708 (Core) 
Release:        7.4.1708
Codename:       Core
[root@localhost ~]# 
[root@localhost ~]# uname -ra
Linux localhost.localdomain 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

二、开始安装

以下均用root权限去操作。

1、安装rpm包

yum install -y systemtap systemtap-runtime

2、安装之后可以使用stap-prep 安装对应的依赖

我们看下这个工具的描述
stap-prep - prepare system for systemtap use
执行该命令会自动的去下载和安装 stap 所需要的依赖,当然如果不能自动安装的话,该命令也会告诉你具体的依赖文件,手动安装即可

[root@localhost ~]# stap-prep 

3、手动安装必要的内核信息包

kernel-debuginfo
kernel-debuginfo-common
kernel-devel
去对应的网站下载即可(下面的几个应该都可以下载):
http://mirror.facebook.net/centos-debuginfo/
http://linuxsoft.cern.ch/centos-debuginfo/
https://ftp.sjtu.edu.cn/scientific/7/archive/debuginfo/
ftp://mirror.switch.ch/pool/4/mirror/scientificlinux/7.0/

4、运行测试SystemTap

[root@localhost ~]# stap -e 'probe begin{printf("Hello, World"); exit();}'
Hello, World

5、错误情况

如果比较顺利的话,后面的就不需要看了

① 如果安装的systemTap版本不是自己想要的,或者说默认的有问题的话,可以建议手动安装

下载地址:https://sourceware.org/systemtap/wiki/SystemTapReleases

安装很简单,不做详细介绍了:

tar -zxvf XX.tar.gz
cd XX
make
make install
执行结束后,执行文件在 _install/bin/ 下面

② 如果提示 时间 对不上
修改vim /usr/src/kernels/3.10.0-693.el7.x86_64/include/generated/compile.h
中的UTS_VERSION ,修改为正确的,再尝试运行 或 重现编译安装stap

在这里插入图片描述

使用stap -V 可以查看具体的版本号,如果是自己安装的话,版本号还是之前的没有替换掉,就使用ln 重新链接下

ln -s /root/systemtap-4.7/_install/bin/stap /usr/bin/stap

参考:https://www.cnblogs.com/wipan/p/9333623.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值