KILL命令信號(hào)詳解
kill 命令通常用來(lái) “殺死”(終止)進(jìn)程,它可以用來(lái)終止運(yùn)行不正常的程序或者反過(guò)來(lái)拒絕終止的程序。kill 命令準(zhǔn)確地說(shuō)并不是 “殺死” 進(jìn)程,而是給進(jìn)程發(fā)送信號(hào)(signal)。和文件一樣,進(jìn)程也有所有者,只有進(jìn)程的所有者(或超級(jí)用戶(hù))才能使用 kill 命令來(lái)向它發(fā)送信號(hào)。
語(yǔ)法
kill [-s <信息名稱(chēng)或編號(hào)>][程序] 或 kill [-l <信息編號(hào)>]
參數(shù)說(shuō)明
- -l <信息編號(hào)> 若不加<信息編號(hào)>選項(xiàng),則 -l 參數(shù)會(huì)列出全部的信息名稱(chēng)。
- -s <信息名稱(chēng)或編號(hào)> 指定要送出的信息。
- [程序] [程序]可以是程序的PID或是PGID,也可以是工作編號(hào)。
示例
發(fā)送SIGHUP信號(hào),可以使用一下信號(hào)
# kill -HUP pid
徹底殺死進(jìn)程
# kill -9 123456
殺死指定用戶(hù)所有進(jìn)程文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-769794.html
#kill -9 $(ps -ef | grep hnlinux) //方法一 過(guò)濾出hnlinux用戶(hù)進(jìn)程
#kill -u hnlinux //方法二
常用信號(hào)
信號(hào)編號(hào) | 信號(hào)名 | 含義 |
---|---|---|
1 | HUP | 掛起信號(hào) |
2 | INT | 中斷信號(hào) |
3 | QUIT | 退出信號(hào) |
9 | KILL | 殺死信號(hào) |
11 | SEGV | 段錯(cuò)誤信號(hào) |
15 | TERM | 終止信號(hào),kill命令默認(rèn)發(fā)送的信號(hào)類(lèi)型 |
18 | CONT | 繼續(xù)運(yùn)行信號(hào),恢復(fù)之前接受了STOP信號(hào)的進(jìn)程 |
19 | STOP | 暫停信號(hào) |
信號(hào)列表
# kill -l
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP
6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1
11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM
16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP
21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ
26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR
31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3
38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8
43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7
58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2
63) SIGRTMAX-1 64) SIGRTMAX
信號(hào)釋義
SIGABRT 由程序調(diào)用 abort時(shí)產(chǎn)生該信號(hào)。 程序異常結(jié)束。 進(jìn)程終止并且產(chǎn)生core文件
SIGALRM timer到期, 有alarm或者setitimer 進(jìn)程終止
SIGBUS 總線(xiàn)錯(cuò)誤,地址沒(méi)對(duì)齊等。取決于具體硬件。 結(jié)束終止并產(chǎn)生core文件
SIGCHLD 進(jìn)程停止或者終止時(shí),父進(jìn)程會(huì)收到該信號(hào)。 忽略該信號(hào)
SIGCONT 讓停止的進(jìn)程繼續(xù)執(zhí)行 繼續(xù)執(zhí)行或者忽略
SIGFPE 算術(shù)運(yùn)算異常,除0等。 進(jìn)程終止并且產(chǎn)生core文件。
SIGHUP 終端關(guān)閉時(shí)產(chǎn)生這個(gè)信號(hào) 進(jìn)程終止
SIGILL 代碼中有非法指令 進(jìn)程終止并產(chǎn)生core文件
SIGINT 終端輸入了中斷字符ctrl+c 進(jìn)程終止
SIGIO 異步I/O,跟SIGPOLL一樣。 進(jìn)程終止
SIGIOT 執(zhí)行I/O時(shí)產(chǎn)生硬件錯(cuò)誤 進(jìn)程終止并且產(chǎn)生core文件
SIGKILL 這個(gè)信號(hào)用戶(hù)不能去捕捉它。 進(jìn)程終止
SIGPIPE 往管道寫(xiě)時(shí),讀者已經(jīng)不在了,或者往一個(gè)已斷開(kāi)數(shù)據(jù)流socket寫(xiě)數(shù)據(jù)。 進(jìn)程終止
SIGPOLL 異步I/O,跟SIGIO一樣。 進(jìn)程終止
SIGPROF 有setitimer設(shè)置的timer到期引發(fā) 。 進(jìn)程終止
SIGPWR Ups電源切換時(shí) 進(jìn)程終止
SIGQUIT Ctrl+\,不同于SIGINT,這個(gè)是會(huì)產(chǎn)生core dump文件的。 進(jìn)程終止并且產(chǎn)生core文件
SIGSEGV 內(nèi)存非法訪(fǎng)問(wèn),默認(rèn)打印出segment fault 進(jìn)程終止并且產(chǎn)生core文件
SIGSTOP 某個(gè)進(jìn)程停止執(zhí)行,該信號(hào)不能被用戶(hù)捕捉。 進(jìn)程暫停執(zhí)行
SIGSYS 調(diào)用操作系統(tǒng)不認(rèn)識(shí)的系統(tǒng)調(diào)用。 進(jìn)程終止并且產(chǎn)生core文件
SIGTERM 有kill函數(shù)調(diào)用產(chǎn)生。 進(jìn)程終止
SIGTRAP 有調(diào)試器使用,gdb 進(jìn)程終止并且產(chǎn)生core文件
SIGTSTP Ctrl+z,掛起進(jìn)程。 進(jìn)程暫停
SIGTTIN 后臺(tái)程序要從終端讀取成數(shù)據(jù)時(shí)。 進(jìn)程暫停
SIGTTOU 后臺(tái)終端要把數(shù)據(jù)寫(xiě)到終端時(shí)。 進(jìn)程暫停
SIGURG 一些緊急的事件,比如從網(wǎng)絡(luò)收到帶外數(shù)據(jù)。 忽略
SIGUSR1 用戶(hù)自定義信號(hào) 進(jìn)程終止
SIGUSR2 用戶(hù)自定義信號(hào) 進(jìn)程終止
SIGVTALRM 有setitimer產(chǎn)生。 進(jìn)程終止文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-769794.html
到了這里,關(guān)于KILL命令信號(hào)詳解的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!