<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    so true

    心懷未來,開創未來!
    隨筆 - 160, 文章 - 0, 評論 - 40, 引用 - 0
    數據加載中……

    如何確定進程對文件的訪問

    假定啟動命令為:./abcd 23,我們想看看該進程是否需要訪問test.txt文件
    1. 啟動后lsof -p $(pgrep abcd)
    2. 啟動過程中 strace -f -e file ./abcd 23 2>&1 | grep open #strace -e network/signal/desc都是很有用的調試參數
    3. 可以chmod a-rw test.txt,然后再啟動./abcd 23,如果程序無法訪問test.txt,或許會報錯并退出,我們可以根據報錯信息來順藤摸瓜
    4. 還有一種方法,經測試未奏效:
    (gdb) start
    (gdb) break open
    (gdb) condition 2 strcmp (((char**)$esp)[1], "bar") == 0
    上面((char**)$esp)[1]用于取第一個參數,gdb的strcmp或許會不好用(可以用p strcmp("hello", "hello")測試一下),如果不好用,可以自己寫一個:
    int mystrcmp(const char* p1, const char* p2) {
        return strcmp(p1, p2);
    }
    5. 通過斷點來打印bt信息:
    define mybt
        set logging file t3.log
        set logging on

        break $arg0
        while 1
            continue
            bt
        end
        set logging off
    end

    6. 經過不懈的努力,終于得到了一種可行的方法:
    $ cat t3.gdb
    set print pretty on
    #set print elements  0
    set print frame-arguments  all
    #set print union on
    set print object on
    #set print demangle on
    set logging file t3.log
    set logging overwrite
    set logging redirect
    set logging on
    start < <(echo $(cat b.html)) #give input stream from a temporary named pipe
    #catch syscall open
    break open
    while 1
        continue
        #info args
        #info locals
        print (char*)$rdi #print filename
        #bt full
        bt
    end
    set logging off
    $ gdb --batch -x t3.gdb --args ./test -a 1 -o "test.txt"
    7. mkfifo test.txt #this maybe hang up read
    8. sudo apt-get install auditd; sudo auditctl -p wra -w $PWD/test.txt; sudo ausearch -f $PWD/test.txt(or sudo vim /var/log/audit/audit.log) #this will monitor read/write/access of test.txt and record logs in /var/log/audit/audit.log

    posted on 2012-12-21 17:19 so true 閱讀(387) 評論(0)  編輯  收藏 所屬分類: C&C++

    主站蜘蛛池模板: 亚洲一区爱区精品无码| 亚洲国产高清精品线久久| 亚洲V无码一区二区三区四区观看| 国产亚洲人成在线影院| 国产精品无码一二区免费| 亚洲av乱码中文一区二区三区| 日产乱码一卡二卡三免费| 亚洲人成人无码.www石榴| 毛片免费观看的视频| 亚洲人成人伊人成综合网无码| 青青青国产免费一夜七次郎| 亚洲AV无码AV男人的天堂不卡| 四虎永久在线精品免费影视| 全黄A免费一级毛片| 国产成人亚洲精品影院| 中文无码成人免费视频在线观看| 久久久久无码精品亚洲日韩| 99re免费99re在线视频手机版| 亚洲欧洲另类春色校园小说| 久久国产精品亚洲综合| 免费在线看黄网站| 亚洲最大成人网色| 91在线品视觉盛宴免费| 亚洲精品无码专区在线播放| 免费在线观看视频a| a级毛片免费播放| 亚洲精品日韩专区silk| 永久黄网站色视频免费观看| 人人公开免费超级碰碰碰视频| 久久91亚洲人成电影网站| 中文字幕无码视频手机免费看| 亚洲.国产.欧美一区二区三区| 久久亚洲中文字幕精品一区| 色婷婷六月亚洲综合香蕉| 亚洲精品无码激情AV| 久久久久久国产精品免费免费男同 | 免费播放特黄特色毛片| 免费无码H肉动漫在线观看麻豆| 亚洲综合综合在线| 免费国产成人午夜电影| 精品国产免费一区二区三区香蕉|