當前位置:
首頁 > 最新 > Linux下監控及診斷工具lsof的使用方法

Linux下監控及診斷工具lsof的使用方法

一、簡介

lsof是 linux 下的一個非常實用的系統級的監控、診斷工具。它可以用來列出被各種進程打開的文件信息,包括但不限於 pipes、sockets、directories、devices等等。因此,使用lsof你可以獲取任何被打開文件的各種信息。必須以 root 用戶的身份運行它才能夠充分地發揮其功能。

對於測試工程師學習的意義:可以很好的監聽、診斷問題。

二、安裝

CentOS系統下安裝lsof命令:yum install lsof,當看到成功標記,輸入y,退出即安裝完成。

查看8080埠號使用的進程: /usr/sbin/lsof –n –p –t –I :8080,顯出出的就是進程號。

三、用法

1、監控打開的文件、設備

1)查看文件、設備被哪些進程佔用 :lsof /dev/tty1

2)指定目錄、掛載點,可以看到有哪些進程打開了其下的文件: lsof /data/

3)列出某個目錄(掛載點 如 /home 也行)下被打開的文件:lsof +D /var/log/

4)列出被指定進程名打開的文件:lsof -c ssh -c init

5)監控進程(指定進程號,可以查看該進程打開的文件):lsof -p 2064

6)當你想要殺掉某個用戶所有打開的文件、設備:kill -9`lsof -t -u lakshmanan`

2、監控網路

1)查看指定埠有哪些進程在使用(lsof -i 列出所有的打開的網路連接):lsof -i:22

2)列出被某個進程打開所有的網路文件:lsof -i -a-p 234或lsof -i -a -c ssh

3)列出所有 tcp、udp 連接:lsof -i tcp或lsof -i udp

4)列出所有 NFS 文件:lsof -N -u lakshmanan –a

3、監聽用戶查看指定用戶打開的文件(lsof -u ^lakshmanan 可以排除某用戶): lsof -umessagebus4、監控應用程序

查看指定程序打開的文件: lsof -c firefox

1、

2、

3、

4、

5、其他技巧:

1)組合邏輯查詢條件

2)只有多個查詢條件都滿足, 用 "-a" 參數,默認是 -o:lsof -a -c bash -u root

3)基於給定的參數延時多少秒重複執行lsof:lsof -u lakshmanan -c init -a -r5

6、使用 lsof 查找打開的文件。

http://www.ibm.com/developerworks/cn/aix/library/au-lsof.html

點擊屏幕右上方分享給好友

讓閱讀分享成為一種習慣


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 門道科技集團 的精彩文章:

WEB測試瀏覽器兼容性問題你知多少?
大牛教你在Oracle中如何整理數據表

TAG:門道科技集團 |