kill -9 和kill -15的区别
kill命令可以向特定的进程发送指定的信号值。不同的信号值所代表的行为不一样。
常见的信号值有:
信号名 | 信号值 | 行为 |
---|---|---|
SIGHUP | 1 | 挂起某个进程 |
SIGINT | 2 | 中断某个进程 |
SIGKILL | 9 | 杀死某个进程 |
SIGTERM | 15 | 结束某个线程,允许该进程在结束之前执行一些清理工作 |
SIGSTOP | 17, 19, 23 | 停止某个进程 |
信号值9和15的区别:
信号值15可以在结束此进程之前,允许此进程做一些清理工作(clean-up)
信号值9会直接杀死目标进程,不给其机会做清理工作
列出所有可用的信号值
[root@iZbp10j40viotftelmrcx2Z ~]# 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
[root@iZbp10j40viotftelmrcx2Z ~]#
关于kill命令
作用
kill命令可以向特定的进程发送指定的信号值。不同的信号值所代表的行为不一样。
语法
kill [-s signal|-p] [-q sigval] [-a] [--] pid...
命令描述
kill命令可以向指定的进程或者进程组发送特定的信号。如果没有指定信号值的话,默认发送的信号值就是TERM(数字 15)。TERM信号值可以用于结束某个进程。相比较于信号值KILL(数字9),应该优先使用TERM信号值,因为对于一个进程来说,通常它们都有一个专门的处理器用于处理TERM信号,以便于在结束此进程之前做一些清理工作(clean-up)。如果在发送完信号值TERM(数字15)之后,进程还没有结束,这时候就需要用到信号值KILL(数字9)。注意:信号值KILL无法被捕捉到,因此它不会给目标线程机会,让其在结束之前执行一些清理工作。
kill命令的所有信号值
[root@localhost ~]# 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
[root@localhost ~]#
网友评论