ubuntu 10.10 安装systemtap 补充

前几天,看到yufeng的日志(http://blog.yufeng.info/archives/1098)有介绍ubuntu10.10安装systemtap的方法,尝试并安装成功(http://haifeng-hust.blogspot.com/2011/03/ubuntu1010systemtap.html)。但是这种方法安装出来的stap在pass3编译ko的时候经常出问题。因此利用deb包半手工安装。

http://ftp.debian.org/debian/pool/main/s/systemtap/的页面中有两个版本1.4.1和1.2.5.就目前10.10版本的ubuntu,安装1.4.1时依赖包libdw1需要1.4.9版本,但是对于deb包,最高的就是1.4.7版本。因此只要降低systemtap的版本。

由于在安装1.4.7的时候,没有安装成功,这时候,无论安装什么包都会提示sudo apt-get install
-f,非常烦人。除去提示的方法就是用sudo dpkg -r 卸载刚才没有安装成功的包。

http://ftp.debian.org/debian/pool/main/s/systemtap/上面下载1.2.5版本的三个包systemtap-runtime
systemtap-common
systemtap.然后在安装systemtap1.2.5的时候,会发生libsqlite依赖包版本过低的问题。因此需要升级libsqlite,升级包地址请猛击:http://packages.debian.org/squeeze/i386/libsqlite3-0/download

然后安装之。这时候,就可以安装systemtap了。

然后测试:
sudo tap -ve 'probe begin{printf("Hello world\n");exit();}'
sudo tap -ve 'probe
kernel.function("sys_open").return{printf("%s\n",execname());exit();}'

另外一个比较纠结的问题是,有时候会莫名其妙重启系统。另外,这个stap的版本较老,一些参数比如 -l 不能识别。

评论

此博客中的热门博文

提交了30次才AC ---【附】POJ 2488解题报告

n个进程共享m个资源得死锁问题证明