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