zoukankan      html  css  js  c++  java
  • [systemtap手记]debian体系安装过程

    Debian体系,本人测试用机 Ubuntu 11.10

    uname -r 查看原本的内核版本为 3.0.0-12-generic

    第一步:

    安装systemtap包

    $ sudo apt-get install systemtap
    $ sudo apt-get install systemtap-sdt-dev
    

    测试

    stap -e 'probe kernel.function("sys_open") {log("hello world") exit()}'

    不能正确输出hello world

    semantic error: libdwfl failure (missing x86_64 kernel/module debuginfo under
    '/lib/modules/3.0.0-12-generic/build'): No such file or directory while resolving probe point
    kernel.function("sys_open")
    semantic error: no probes found
    Pass 2: analysis failed.  Try again with another '--vp 01' option.
    

    报告错误大致意思为找不到内核debuginfo 信息

    解决办法:

    1.安装带debuginfo的内核

    #安装编译内核所需要的对应的依赖关系包
    $ sudo apt-get build-dep --no-install-recommends linux-image-$(uname -r)
    #下载内核镜像
    $ apt-get source linux-image-$(uname -r)
    $ cd linux-3.0.0
    $ debian/rules clean
    #开始编译内核,skipdbg为false编译不跳过带debuginfo的选项
    $ AUTOBUILD=1 fakeroot debian/rules binary-generic skipdbg=false
    #安装3.0.0-32版本的内核
    $ sudo dpkg -i ../linux-image-3.0.0-32-generic-dbgsym_3.0.0-32.51_i386.ddeb
    

    笔者最初的内核版本为3.0.0-12-generic,编译带debuginfo的内核安装后对应升级到 3.0.0-32-generic

    2.安装linux-headers

    sudo apt-get install linux-headers-`uname -r`
    

    3.重启机器

    stap -e 'probe kernel.function("sys_open") {log("hello world") exit()}'
    

     正确输出hello world表示安装成功

  • 相关阅读:
    空间解析几何与向量代数(复习笔记)
    OpenGL数据类型
    Symbian c++ 调用标准C产生内存泄露
    symbian c++调用标准c函数方法
    (转载)一篇对理解OpenGL的描述的文章
    (个人摘要)make工具的用法
    (转载)哈佛大学凌晨4点半的景象
    网页抓取中的debug 问题记录
    split 使用
    三、抽象工厂(Abstract Factory)模式
  • 原文地址:https://www.cnblogs.com/Bozh/p/3217034.html
Copyright © 2011-2022 走看看