kill是用來終止進程的
首先可以通過ps aux查看系統有哪些進程正在運行。
1.用kill來殺死某一個進程
#kill,加選項-9,加PID,表示殺死進程編號為PID的這個進程
# -1 重啟
#kill -9 PID
#下面表示殺死進程PID為2899的進程
[root@localhost ~]# kill -9 2899
2.用killall殺死一類進程
#killall,加選項-9,加服務名, 表示殺死該服務的所有進程
# -1 重啟
#killall -9 service
#下面表示殺死httpd服務的所有進程
[root@localhost ~]# killall -9 httpd
3.用pkill踢出某個終端
#pkill,加選項-9,加終端號,表示踢出該終端
# -1 重啟
#pkill -9 pts/0
#下面表示提出我的遠程登錄終端pts/0
[root@localhost ~]# pkill -9 pts/0
___________________________________________________________________________________________________________________________________
首先說一下kill命令,它是通過pid(進程ID)來殺死進程,要得到某個進程的pid,我們可以使用ps(process status)命令,默認情況下,kill命令發送給進程的終止信號是15,但是有些進程不會理這個信號,這樣的話,可以用9信號來強制殺死,信號9是不會被忽略的強制性執行信號。
而killall和pkill都是使用命令名來終止進程的有效手段,它們不同於kill通過pid來殺死進程的方式,它可以理解為成批成批的殺死進程,當然這么做的危險性也相對提高了不少。當然它們也可以給進程發送相應的終止信號。
比如我們要殺死mysql的相關進程,我們可以使用pkill -9 mysqld即可殺死所有mysql相關的進程,比較方便,不過它有可能會誤刪程序。
下面是常用的信號的數字及其含義:
1 表示從終端上發出的結束信號
2 表示從鍵盤上發出的終端信號(即Ctrl+c)
3 表示從鍵盤上發出的退出信號(即Ctrl+\)
8 表示浮點異常,比如被0除
9 表示結束接受信號的進程,也就是強行殺死進程
15 kill命令默認的終止信號
17 子進程終止或結束的信號
19 從鍵盤來執行的信號