檔案描述符FD的含義 檔案控制代碼

2022-02-18 12:07:04 字數 1842 閱讀 2618

使用sudo lsof -np -itcp -stcp:listen檢視占用埠的程式;因為 lsof 需要訪問核心記憶體和各種檔案,所以必須以 root 使用者的身份執行它才能夠充分地發揮其功能

檔案控制代碼是windows系統的概念,在linux下稱之為檔案描述符fd(file description)

sort -nr 安裝數字逆序排列 -n number -r reverse

uniq -c 統計相同項的數量,分兩列顯示,左列顯示數量,右列顯示內容 -c count

1)統計各程序開啟fd數:lsof -n|awk ''|sort|uniq -c|sort -nr

2)統計各使用者開啟fd數:lsof -n|awk ''|sort|uniq -c|sort -nr

3)統計各命令開啟fd數:lsof -n|awk ''|sort|uniq -c|sort -nr

ulimit -n

ulimit -a

man lsof

可以檢視fd/type等各個欄位的含義

1)cwd:表示 current  work dirctory,即:應用程式的當前工作目錄,這是該應用程式啟動的目錄,除非它本身對這個目錄進行更改

2)txt:該型別的檔案是程式**,如應用程式二進位制檔案本身或共享庫,如上列表中顯示的 /sbin/init 程式

3)lnn: library references (aix)

4)er: fd information error (see name column)

5)jld: jail directory(freebsd)

6)ltx: shared library text(code and data)

11)pd: parent directory

12)rtd: root directory

13)tr: kernel trace file (openbsd)

15)0:表示標準輸出

16)1:表示標準輸入

17)2:表示標準錯誤

一般在標準輸出、標準錯誤、標準輸入後還跟著檔案狀態模式:r/w/u 等

1)u:表示該檔案被開啟並處於讀取/寫入模式

2)r:表示該檔案被開啟並處於唯讀模式

3)w:表示該檔案被開啟並處於只寫入模式

4)空格:表示該檔案的狀態模式為 unknown ,且沒有鎖定

5)- : 表示該檔案的狀態模式為 unknown ,且被鎖定

同時在檔案狀態模式後面,還跟著相關的鎖

1)n:for a solaris nfs lock of unknown type

2)r: for a read lock on part of the file

3)r:for a read lock on the entire file

4)w: for a write lock on part of the file (檔案的部分寫鎖)

5)w: for a write lock on the entire file(整個檔案的寫鎖)

6)u: for a read and write lock of any length

7)u: for a lock of unknown type

8)x: for an sco openserver xenix lock on part of the file

9)x:for an sco opentserver xenix lock on the entire file

10)space : if there is no lock

檔案描述符 fd

1 首先說什麼是檔案描述符,它有什麼作用?檔案描述符是乙個簡單的整數,用以標明每乙個被程序所開啟的檔案和socket。第乙個開啟的檔案是0,第二個是1,依此類推。unix 作業系統通常給每個程序能開啟的檔案數量強加乙個限制。更甚的是,unix 通常有乙個系統級的限制。因為squid 的工作方式,檔案...

檔案控制代碼 檔案描述符

檔案控制代碼和檔案描述符 在我們跨平台開發的時候,經常會碰到這倆個概念 檔案描述符 本質上是乙個索引號 非負整數 系統使用者層可以根據它找到系統核心層的檔案資料。這是乙個posix標準下的概念,常見於linux系統。但windows也有檔案描述符這個概念,但不常用。檔案控制代碼 windows下的概...

檔案控制代碼 檔案描述符

由於程序級檔案描述符表的存在,不同的程序中會出現相同的檔案描述符,它們可能指向同乙個檔案,也可能指向不同的檔案。兩個不同的檔案描述符,若指向同乙個開啟檔案控制代碼 file 將共享同一檔案偏移量。因此,如果通過其中乙個檔案描述符來修改檔案偏移量,那麼從另乙個檔案描述符中也會觀察到變化,無論這兩個檔案...