CentOS 上 关于 SystemTap 安装

重点是需要内核的匹配

1.

首先先查看你的内核版本

uname -a

如果你的内核版本比较老的话,你需要去查找你需要的kernel-devel 的版本.

如果你想用yum去安装,你可以用 yum install kernel-devel

注意:在最新的yum里面安装的总是最新的kernel-devel的版本,kernel-devel 需要匹配内核版本

比如: CentOS 5.3 用的是内核版本 2.6.18-128.el5

先下载 和内核版本一样的对应的

http://ftp.cs.stanford.edu/pub/rpms/centos/5/x86_64/kernel-devel-2.6.18-128.el5.x86_64.rpm

然后安装

rpm-ivh kernel-devel-2.6.18-128.el5.x86_64.rpm

安装好kernel-devel会有内核的目录在

/usr/src/kernels/2.6.18-128.el5-x86_64

2.

安装systemtap

yum install systemtap

3. 安装debuginfo 去

http://debuginfo.centos.org

寻找和你内核完全匹配的

kernel-debuginfo-common-xxxxx

kernel-debuginfo-xxxx

如果你找不到对应的内核版本的rpm,你可以去google 去寻找,可以使用RedHat的debuginfo rpm 包

象centos的官方网站里只有

kernel-debuginfo-common-2.6.18-128.7.1.el5.centos.plus.x86_64.rpm

多了centos.plus 还是不能使用

去下载

http://rpm.pbone.net/index.php3/stat/4/idpl/13968571/dir/redhat_el_5/com/kernel-debuginfo-common-2.6.18-128.el5.x86_64.rpm.html

ftp://ftp.pbone.net/mirror/ftp.redhat.com/pub/redhat/linux/enterprise/5Server/en/os/x86_64/Debuginfo/kernel-debuginfo-2.6.18-128.el5.x86_64.rpm

安装rpm -ivh kernel-debuginfo*.rpm

如何测试:

stap -ve 'probe begin { log("hello world") exit() }'

官方wiki:

http://sourceware.org/systemtap/wiki/SystemTapOnCentOS

相关推荐