ubuntu 8.04下安裝和使用systemtap
systemtap是一個linux下的系統調用和跟蹤程序,如果您在windows下用過filemon或者processmonitor的話就明白了.systemtap功能比processmonitor更強大一些,定制性更高些.但是顯然,和大多數linux程序一樣,也更難用!
為了裝這個systemtap,翻了好多貼子,最簡單的方法如下:
如果不習慣使用這么高定制性的工具的話,可以改用strace,用法簡單:strace -f -o out_trace.txt /opt/eclipse/eclipse 我這里是用來跟蹤eclipse運行時候的文件讀寫記錄.
參考文獻:
為了裝這個systemtap,翻了好多貼子,最簡單的方法如下:
- 運行命令:sudo apt-get install linux-image-debug-`uname -r`
- 運行命令: sudo ln -s vmlinux-debug-`uname -r` vmlinux-`uname -r`
- 運行命令:sudo apt-get install systemtap
probe syscall.open然后用命令運行:sudo stap ./a.stp 如果順利的話,就可以看到輸出了.不過我這里運行到pass5的時候報錯:/usr/lib/systemtap/stapio terminated,正在查找原因中.
{
printf ("%s(%d) open (%s)\n", execname(), pid(), argstr)
}
如果不習慣使用這么高定制性的工具的話,可以改用strace,用法簡單:strace -f -o out_trace.txt /opt/eclipse/eclipse 我這里是用來跟蹤eclipse運行時候的文件讀寫記錄.
參考文獻:
- http://blog.chinaunix.net/u/12679/showart_529575.html (注:這個方法不好用,我在xubuntu下界面出問題,而且stap無法運行)
- https://bugs.launchpad.net/ubuntu/+source/systemtap/+bug/106957
- http://sourceware.org/systemtap/tutorial/node5.html 有關systemtap腳本的編寫
- http://www.ibm.com/developerworks/cn/linux/l-systemtap/ 使用Systemtap調試內核
- http://www.xxlinux.com/linux/article/development/soft/20051125/67.html 使用truss,strace,ltrace跟蹤

公眾號:老翅寒暑
浙公網安備 33010602011771號