Linux进程终止命令kill或killall​笔记


640?wx_fmt=png

在linux命令下,如果需要终止某个进程,可以使用kill或者killall等命令来实现。终止命令的原理都是向linux内核发送一个系统操作的信号以及某个进程的ID,然后系统内核会根据指定的进程ID进行相应的处理。

kill命令典型的用法:首先使用ps命令查出PID,然后使用kill命令进行处理。

语法格式如下:kill [信号代码] 进程ID

用法:

ps -ef | grep dhcp

输出结果:root     25933 25749  0 10:59 pts/0    00:00:00 grep --color=auto dhcp

然后执行:kill 25933

技巧:也可以通过pidof快速的方式进程id,可以使用pidof命令

比如执行:pidof mysqld

输出结果:16502

然后执行:kill 16502

kill信号代码:kill信号代码共有64种,

常用的主要有三个:

HUP(1):重启,重启的时候不会修改主进程的ID,但是子进程的ID会改变。

KILL(9):强行杀掉,使用-9参数会强制杀掉进程,其效果是立即杀死进程,该信号不能被阻塞或忽略。因为进程ID都是数字,很容易写错操作杀掉系统关键的进程,并且不会清理之前申请的内存,会一定程度上造成“内存泄漏”。

TERM(15):正常结束,它会使进程正常退出,Linux默认会按照这种方式执行进程的终止。

killall命令:Linux系统还可以使用killall来终止进程,命令比较简单有更加安全。

语法格式:killall 进程名称

比如:killall mysqld #终止系统中所有的mysqld进程


原文地址:https://www.cnblogs.com/hgmyz/p/12351230.html