每天一命令之kill

来自linux中国网wiki
docker>Evan2019年8月13日 (二) 08:35的版本 →‎Linux kill -9 和 kill -15 的区别
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳到导航 跳到搜索

Linux kill -9 和 kill -15 的区别

Kill用户Pkill

IGKILL	9	Kill(can't be caught or ignored) (POSIX)

SIGTERM	15	Termination (ANSI)


说一下SIGKILL和SIGTERM

3)(kill pid) 、( kill -15 pid)

系统会发送一个SIGTERM的信号给对应的程序。当程序接收到该signal后,将会发生以下的事情

程序立刻停止
当程序释放相应资源后再停止
程序可能仍然继续运行
      大部分程序接收到SIGTERM信号后,会先释放自己的资源,然后在停止。但是也有程序可以在接受到信号量后,做一些其他的事情,并且这些事情是可以

      配置的。如果程序正在等待IO,可能就不会立马做出相应。

  也就是说,SIGTERM多半是会被阻塞的、忽略。

4)kill  -9 pid

你不是可以不响应 SIGTERM吗??那好,我给你下一道必杀令,我看你还不乖乖的。多半admin会用这个命令

不过,也不是所有的程序都会乖乖听话,总有那些状态下的程序无法立刻相应。

也可以总结为 
ctrl+c是终止当前在终端窗口中运行的命令或脚本,
kill -9 pid,是不顾后果的强制终止(如果的你的速度够快,有时候是和ctrl+c是一样的)
kill -15 pid,是先关闭和其有关的程序,再将其关闭



Linux kill -9 和 kill -15 的区别