美文网首页
[Linux-CMD] kill

[Linux-CMD] kill

作者: 帅可儿妞 | 来源:发表于2019-08-07 10:58 被阅读0次

    经常都会用到这个kill,但是当遇到一些不是很常用的参数的时候,我还是蒙了,赶紧查一下记在这里(不是脑子里)

    kill -[信号] PID
    

    kill命令常用信号及其含义:

    信号编号 信号名 含义
    0 EXIT 程序退出时收到该信息。
    1 HUP 挂掉电话线或终端连接的挂起信号,这个信号也会造成某些进程在没有终止的情况下重新初始化:重新加载配置。
    2 INT 表示结束进程,但并不是强制性的,常用的 "Ctrl+C" 组合键发出就是一个 kill -2 的信号。
    3 QUIT 退出。
    9 KILL 杀死进程,即强制结束进程。六亲不认的杀掉。
    11 SEGV 段错误。
    15 TERM 正常结束进程,是 kill 命令的默认信号。

    kill [-s|l <pid>][sig]

    kill [-s <信息名称或编号>][程序] 或 kill [-l <信息编号>]
    参数说明:

    -l <信息编号>  若不加<信息编号>选项,则-l参数会列出全部的信息名称。
    -s <信息名称或编号>  指定要送出的信息。
    [程序]  [程序]可以是程序的PID或是PGID,也可以是工作编号。

    一、常用命令:

    1. kill -HUP pid
      pid 是进程标识。如果想要更改配置而不需停止并重新启动服务,请使用该命令。在对配置文件作必要的更改后,发出该命令以动态更新服务配置。

    根据约定,当您发送一个挂起信号(信号 1 或 HUP)时,大多数服务器进程(所有常用的进程)都会进行复位操作并重新加载它们的配置文件。清单 2 显示了向所有正在运行的 Web 服务器进程发送挂起信号的一种方法。

    1. 让Web 服务器重新加载其配置文件并对文件进行复位操作
      ps -A | grep httpd | grep -v grep | awk '{ print $1; }' | xargs -L 1 sudo kill -HUP
      上面的命令中包含了很多的操作,所以让我们来仔细地看一下管道的每个部分。ps 和 grep 命令用来在所有的进程中搜索 httpd(并且忽略用来搜索 httpd 进程的 grep 进程)。接下来,awk 只显示输出结果中的进程 ID,并将它传递给 xargs。然后,xargs 命令接受每个进程 ID(因为使用了 -L 1 以便一次提取一行内容),并使用 sudo kill -HUP 向相应的进程发送一个挂起信号。

    LINUX和Unix都适用:
    改/etc/ssh/sshd_config,将里面的Port改为新端口,比如10022,然后 kill -HUP cat /var/run/sshd.pid 就行了。
    现有连接自己不会断,因为kill -HUP cat /var/run/sshd.pid 只是HUP监听的那个,已经建立的连接(不同的 pid)不会断。
    然后你在现有账号下面exit,在用新的端口登陆就可以了。

    PS:

    HUP(1)是让进程挂起,睡眠;

    因为进程可能屏蔽某些信号,所以它们的用处也就不一样。。。

    相关文章

      网友评论

          本文标题:[Linux-CMD] kill

          本文链接:https://www.haomeiwen.com/subject/qnqgdctx.html