CentOS7.3学习笔记总结(二十四)-Centos linux系统中杀死进程的方法
在工作中,我常常需要终止有问题的进程,一般通过程序的关闭命令把进程关闭掉,这是最安全的方法,但是有些时候,我们无法通过关闭命令把进程结束掉,这时就需要通过杀死进程的方法来结束这个有问题的进程。而杀进程的方法有很多,常见的有kill、killall、pkill等。最安全的方法是单纯使用kill命令。
1、kill
使用kill命令需要我们先查到进程的PID,方法:
ps auxf#查到我们需要杀掉的进程PID,由于进程较多,我们通常使用:
ps auxf|grep 进程名
例如:杀掉rpcbind进程
Kill杀掉掉rpcbind进程,只杀死父进程,但是子进程还存在,因此仍消耗资源,为了节约系统资源,以及防止"僵尸进程",我们应该在杀死父进程之前,先杀死其所有的子进程。
必杀技 kill -9 PID(-9是kill信号)
此命令是比较危险的,不建议使用,有可能会是系统崩溃,或者系统关机等风险。
信号对照表:
2、killall命令
该命令是杀死一个进程组的所有进程,指定要终止的进程的名字,而不是PID。
例如:杀死apache进程
killall httpd
3、pkill命令
该命令可以按照进程名杀死进程。pkill和killall应用方法差不多,也是直接杀死运行中的程序;如果您想杀掉单个进程,请用kill来杀掉。
语法
pkill(选项)(参数)
选项
-o:仅向找到的最小(起始)进程号发送信号;
-n:仅向找到的最大(结束)进程号发送信号;
-P:指定父进程号发送信号;
-g:指定进程组;
-t:指定开启进程的终端。
例:
pkill httpd