歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux教程

CentOS 5.4 final下Systemtap的安裝

一、Systemtap運行環境需求
 (1)linux kernel with kprobes (mainline 2.6.11+ or backport);
 (2)kernel module build environment (kernel-devel or kernel-smp-devel rpm);
 (3)kernel debugging information (kernel-debuginfo rpm);
 (4)C compiler (same as what kernel was compiled with);
 (5)elfutils with libdwfl for debugging informatin parsing;
 (6)root privileges;
即:
 (1)內核支持並配置了kprobe(內核2.6.11和以上)
 (2)內核模塊編譯環境(即編譯內核模塊所需的內核頭文件以及模塊配置信息,對於Fedora core或RedHat指kernel-devel或kernel-smp-devel RPM包)
 (3)內核調試信息(對於Fedora core或Redhat指kernel-debuginfo RPM包)
 (4)C編譯環境
 (5)支持libdwfl的elfutils(只有支持libwdfl的elfutils,systemtap才能正常工作,如果您的系統的elfutils較舊,您必須下載elfutils源碼包來編譯,systemtap能夠和elfutils一塊編譯)
 (6)root權限(為了運行Systemtap,您必須具有root權限)

二、CentOS 5.4 final下安裝步驟
   內核版本 
   [root@localhost opt]# uname -r
   2.6.18-164.el5  <假若是2.6.18-164.el5xen是表示內核對虛擬化的支持>
   操作系統版本
   [root@localhost opt]# cat /etc/issue
   CentOS release 5.4 (Final) Kernel \r on an \m
  
   Cent OS 5.4發行光盤中包含了下面所列出的大部分包,
   可以通過 rpm -q 命令查看,
   或者
   在圖形界面的“應用程序”—>“添加/刪除軟件”—>“搜索”—>輸入軟件包名來查詢軟件包的相關信息。
   注意:下面列出的kernel-debuginfo-common,kernel-debuginfo,kernel-xen-debuginfo這三個包一般在發行光盤中都不自帶,
   需要到網上去下載,下面列出幾個下載地址:

   (i)  http://debuginfo.centos.org/5/i386/ 這裡可以下載 Cent OS 5 的kernrl-debuginfo的rpm包。(我的機器是 i386)

   (ii) http://rpm.pbone.net/  選擇系統版本號,可以下載到相應的rpm安裝包。

   (注意) 如果是xen內核應該下載kernel-xen-debuginfo包;

                此外kernel-debuginfo-common和kernel-debuginfo版本應該相同,後者依賴於前者,安裝時先安裝前者;

                我在Cent OS 5.4 Final下使用SystemTap時最開始沒有安裝這兩個包,SystemTap仍能正常工作,監測系統調用,不知何故,建議安裝上,最後我下載安裝的是kernel-debuginfo-2.6.18-194.11.4.el5.i686.rpm和kernel-debuginfo-common-2.6.18-194.11.4.el5.i686;
   
   (1)安裝gcc,libcap-devel
     gcc是編譯器(c、c++),libcap-devel是libcap的開發文件;
     查看系統中是否安裝相應包,這些包在Cent OS 5.4 final發行光盤都能找到;
     [root@localhost opt]# rpm -q gcc
     gcc-4.1.2-46.el5
     [root@localhost opt]# rpm -q libcap
     libcap-1.10-26

   (2)安裝kernel-headers
     kernel-headers是被glibc使用的linux內核的頭文件;
     查看系統中是否安裝相應包,該包在Cent OS 5.4 final發行光盤中能找到;
     [root@localhost opt]# rpm -q kernel-headers
     kernel-headers-2.6.18-164.el5

   (3)安裝kernel-devel
     kernel-devel是用來構建與內核匹配的內核模塊的開發軟件包;
     如果是Xen內核,需要安裝kernel-xen-devel包,如果內核版本是smp的,則需安裝kernel-[smp-]devel包;
     該包在Cent OS 5.4 final發行光盤中能找到;
     [root@localhost opt]# rpm -q kernel-devel
     kernel-devel-2.6.18-164.el5

   (4)安裝kernel-debuginfo-common
     該包在Cent OS 5.4 final發行光盤中沒有,需要自己下載安裝,下載地址在前面已經給出。

     [root@localhost opt]# rpm -q kernel-debuginfo-common
     package kernel-deguginfo-common is not installed

   (5)安裝kernel-debuginfo
     如果是Xen內核,需要下載並安裝kernel-xen-debuginfo;
     SystemTap需要通過內核調試信息來定位內核函數和變量的位置。
     該包在Cent OS 5.4 final發行光盤中沒有,需要自己下載安裝,下載地址在前面已經給出。
     [root@localhost opt]# rpm -q kernel-xen-debuginfo
     package kernel-xen-deguginfo is not installed

    --------------------------------------------------------------------

Copyright © Linux教程網 All Rights Reserved