怎么在Centos linux系統(tǒng)中殺死進程?
我經(jīng)常不得不在工作中中斷有問題的過程,通常,通過程序的關(guān)閉命令關(guān)閉進程,這是最安全的方法,但是有時我們無法使用close命令結(jié)束該過程,結(jié)束流程以結(jié)束有問題的流程。 結(jié)束進程有很多方法,一般是kill,killall,kill等, 簡單地使用kill命令是最安全的。
1、kill
使用kill命令需要我們先查到進程的PID,方法:
ps auxf#查到我們需要殺掉的進程PID,由于進程較多,我們通常使用:
ps auxf|grep 進程名
例如:殺掉rpcbind進程
Kill殺掉掉rpcbind進程,只殺死父進程,但是子進程還存在,因此仍消耗資源,為了節(jié)約系統(tǒng)資源,以及防止“僵尸進程”,我們應(yīng)該在殺死父進程之前,先殺死其所有的子進程。
必殺技 kill -9 PID(-9是kill信號)
此命令是比較危險的,不建議使用,有可能會是系統(tǒng)崩潰,或者系統(tǒng)關(guān)機等風(fēng)險。
信號對照表:
2、killall命令
該命令是殺死一個進程組的所有進程,指定要終止的進程的名字,而不是PID。
例如:殺死apache進程
killall httpd
3、pkill命令
該命令可以按照進程名殺死進程。pkill和killall應(yīng)用方法差不多,也是直接殺死運行中的程序;如果您想殺掉單個進程,請用kill來殺掉。
語法
pkill(選項)(參數(shù))
選項
-o:僅向找到的最小(起始)進程號發(fā)送信號;
-n:僅向找到的最大(結(jié)束)進程號發(fā)送信號;
-P:指定父進程號發(fā)送信號;
-g:指定進程組;
-t:指定開啟進程的終端。
例:
pkill httpd