RHEL6 Systemtap 安装笔记

以 RHEL6u3 为例

1  Systemtap 安装

    yum install systemtap    

    跟systemtap有关的有6,7个,全装上,别偷懒

    就用yum安装,别傻傻的去下rpm包,吃力不讨好

2  kernel debuginfo包安装

这一点RHEL6 跟 RHEL5不同, redhat没有提供 kernel debuginfo 包的ftp下载(也可能是我没有找到),

估计可能是要收钱了,网上大部分都是centos或者其他源码编译的(rpm -qi xxx.rpm 的Vendor字段)

用 http://rpm.pbone.net/ 搜

rpm -ivh kernel-debuginfo-2.6.32-279.el6.x86_64.rpm

rpm -ivh kernel-debuginfo-common-x86_64-2.6.32-279.el6.x86_64.rpm

 

3  小修改

由于Vendor不是正牌的Red Hat, Inc, 因此Systemtap校验的时候会报错 "Build-id mismatch kernel vs vmlinux ...”

修改 /usr/share/systemtap/runtime/sym.c 第269行

 if (rc || (theory != practice)) {   ==>       if (rc || 0 /*(theory != practice)*/) {


4 验证

stap -e 'probe begin {printf("hello ");exit()}'

打印hello

5 补充

   因为第3步中强行注释了build-id验证,因此不保证所有的stp脚本一定百分百OK,毕竟centos只是根据源码编译,

   跟redhat自家出的还是不一样

  

原文地址:https://www.cnblogs.com/quixotic/p/3258527.html