ps aux
A表示所有process皆列出,a表示不與terminal有關的
u表示有效user
列表的caption大多可以望文生義,其中比較特別的有
VSZ :該 process 使用掉的虛擬記憶體量 (Kbytes)
RSS :該 process 佔用的固定的記憶體量 (Kbytes)
STAT:表示狀態,process狀態有底下列出的幾種
- R (Running):該程式正在運作中;
- S (Sleep):開程式目前正在睡眠狀態(idle),但可以被喚醒(signal)。
- D :不可被喚醒的睡眠狀態,通常這支程式可能在等待 I/O 的情況(ex>列印)
- T :停止狀態(stop),可能是在工作控制(背景暫停)或除錯 (traced) 狀態;
- Z (Zombie):殭屍狀態,程序已經終止但卻無法被移除至記憶體外。
top則列出目前系統執行的時候,各個process佔用的資源比例
在unix/linux底下幾乎可以把所有東西看成FILE/檔案,包含socket、device...等等,所以有個可以觀察開啟檔案的指令叫做lsof (list open file),其實資訊是由/proc來的,可以觀察非常多東西,不過也非常難整理(如果不加參數),使用lsof時建議使用root權限,不然可能因為權限問題看不到資料
lsof -u user_id
觀察使用者開啟的檔案
lsof +p procces#
觀察process#所開啟的檔案
lsof -i:#
-i跟:間沒有空白,觀察某個port number所開啟的檔案
lsof `which apache2`
觀察哪個process在使用apache2程式
lsof /dev/hda6
觀察哪個process佔用這個device
沒有留言:
張貼留言