linux下檢視系統程序占用的控制代碼數

2021-07-16 22:08:32 字數 1310 閱讀 1655

---檢視系統預設的最大檔案控制代碼數,系統預設是1024

# ulimit -n

1024

----檢視當前程序開啟了多少控制代碼數

# lsof -n|awk ''|sort|uniq -c|sort -nr|more

131 24204 

57 24244  

57 24231   

........

其中第一列是開啟的控制代碼數,第二列是程序id。

可以根據id號來檢視程序名。

# ps aef|grep 24204

nginx  24204 24162 99 16:15 ?    00:24:25 /usr/local/nginx/sbin/nginx -s

linux有硬性限制和軟性限制。可以通過ulimit來設定這兩個引數。方法如下,以root使用者執行以下命令:

# ulimit -hsn 4096

以上命令中,h指定了硬性大小,s指定了軟性大小,n表示設定單個程序最大的開啟檔案控制代碼數量。個人覺得最好不要超過4096,畢竟開啟的檔案控制代碼數越多響應時間肯定會越慢。設定控制代碼數量後,系統重啟後,又會恢復預設值。如果想永久儲存下來,可以修改.bash_profile檔案,可以修改 /etc/profile 把上面命令加到最後.

檢視程序占用的控制代碼數有幾種辦法:

1) 通過cat/proc/pid/fd可以檢視執行緒pid號開啟的執行緒;

2) 通過lsof命令, /usr/sbin/lsof-p 21404 命令結果如下:

command pid user fd type device size node name

vas 21404 root cwd dir 8,3 4096 30195729 /home/users/root/vas

vas 21404 root rtd dir 8,2 4096 2 /

vas 21404 root txt reg 8,3 112201650 30195914 /home/users/root/vas

command:程序的名稱

pid:程序識別符號

user:程序所有者

fd:檔案描述符,應用程式通過檔案描述符識別該檔案。如 cwd、txt等

type:檔案型別,如 dir、reg、ipv4、fieo等

device:指定磁碟的名稱

size:檔案的大小

node:索引節點(檔案在磁碟上的標識)

name:開啟檔案的確切名稱

另外通lsof命令也可以檢視占用埠(下面檢視的是9001埠被哪個程序占用)的程序:

/usr/sbin/lsof-i :9001

linux下檢視系統程序占用的控制代碼數

檢視系統預設的最大檔案控制代碼數,系統預設是1024 ulimit n 1024 檢視當前程序開啟了多少控制代碼數 lsof n awk sort uniq c sort nr more 131 24204 57 24244 57 24231 其中第一列是開啟的控制代碼數,第二列是程序id。可以根據...

linux下檢視系統程序占用的控制代碼數

檢視系統預設的最大檔案控制代碼數,系統預設是1024 ulimit n 檢視當前程序開啟了多少控制代碼數 lsof n awk sort uniq c sort nr more 131 24204 57 24244 57 24231 其中第一列是開啟的控制代碼數,第二列是程序id。可以根據id號來檢...

Linux檢視程序占用

要對程序進行監測和控制,首先必須要了解當前程序的情況,也就是需要檢視當前程序,而ps命令 process status 就是最基本同時也是非常強大的程序檢視命令.使用ps命令 可以確定有哪些程序正在執行和執行的狀態 程序是否結束 程序有沒有殭屍 哪些程序占用了過多的資源等等.總之大部分資訊都是可以通...