linux 很好,佔用系統資源低,低端機都可以流暢的運行.但是偶爾也會遇到像windows下煩人的問題,那就是進程佔用CPU100%.
最近我就遇到了這個問題,還好,我使用了一套組合拳,把佔用CPU資源100%的進程給幹掉了.
步驟是:
1)先top,查看進程健全狀態,包括進程ID,CPU佔用率等.Linux還是比較友好的,他會把CPU使用率最大的放在最上面,很快我就找到了罪魁禍首:ID:20641 ...
2)找到了進程,那再仔細看一下也無妨,然後ps ax,查看進程健全狀態.可以查看到進程的ID號,那個使用者在使用,進程命令是什麼等.
3)情況瞭解了,原來是vi init在作怪,用kill -9 20641強制幹掉此進程.
再TOP一次.好了,CPU使用率恢複正常了.
附命令用法:
1.top
使用許可權:所有使用者
使用方式:top [-][d delay][q][c][S][s][n]
說明:即時顯示process的動態
參數:
d:改變顯示的更新速度,或是在交談式指令列(interactive command)按s
q:沒有任何延遲的顯示速度,如果使用者是有superuser的許可權,則top將會以最高的優先序執行
c:切換顯示模式,共有兩種模式,一是只顯示執行檔的名稱,另一種是顯示完整的路徑與名稱S:累積模式,會將己完成或消失的子行程 (dead child process )的CPU time累積起來
s:安全模式,將交談式指令取消,避免潛在的危機
i:不顯示任何閑置(idle)或無用(zombie)的行程
n:更新的次數,完成後將會退出top
b:批次檔模式,搭配"n"參數一起使用,可以用來將top的結果輸出到檔案內
範例:
顯示更新十次後退出 ;
top -n 10
使用者將不能利用交談式指令來對行程下命令 :
top -s
將更新顯示二次的結果輸入到名稱為 top.log 的檔案裡 :
top -n 2 -b < top.log
2.ps
1)ps a 顯示現行終端機下的所有程式,包括其他使用者的程式。
2)ps -A 顯示所有程式。
3)ps c 列出程式時,顯示每個程式真正的指令名稱,而不包含路徑,參數或常駐服務的標示。
4)ps -e 此參數的效果和指定"A"參數相同。
5)ps e 列出程式時,顯示每個程式所使用的環境變數。
6)ps f 用ASCII字元顯示樹狀結構,表達程式間的相互關係。
7)ps -H 顯示樹狀結構,表示程式間的相互關係。
8)ps -N 顯示所有的程式,除了執行ps指令終端機下的程式之外。
9)ps s 採用程式訊號的格式顯示程式狀況。
10)ps S 列出程式時,包括已中止的子程式資料。
11)ps -t<終端機編號> 指定終端機編號,並列出屬於該終端機的程式的狀況。
12)ps u 以使用者為主的格式來顯示程式狀況。
13)ps x 顯示所有程式,不以終端機來區分。
最常用的方法是ps -aux,然後再利用一個管道符號導向到grep去尋找特定的進程,然後再對特定的進程進行操作。
Linux好學堂, www.linuxhao.com,提供Linux安裝指南,Linux系統管理,Linux網路應用,Linux伺服器技術,Linux編程開發,Linux下載中心。