如何在Linux中终止进程
我们将向您展示如何在Linux中终止进程。 Linux的主要优点之一是无需重新启动服务器即可完成该过程的能力。 在本文中,我们将向您展示如何使用kill,pkill和killall命令在Linux中终止进程。
1.什么是PID
在开始之前,我们需要知道什么是进程ID(PID)。
PID代表Linux进程数字标识。 每个过程都有一个唯一的PID。 实际上,例如,在基于Linux的系统上启动的第一个进程是进程,其PID设置为1。该进程是所有其他进程的父进程。 不能使用kill命令杀死init进程,这确保了它不会被意外杀死。
现在,为了找到服务器上每个正在运行的进程的PID,我们可以运行以下命令:
ps -A
这为我们提供了所有正在运行的进程及其对应的PID的列表。
如果要查找特定进程的PID,可以使用pidof命令,后跟进程名称。 例如,要查找我们的MySQL进程的PID,可以运行以下命令:
pidof mysql
有关更多详细信息,我们可以使用以下命令 ps辅助 和…一起 grep:
ps aux | grep mysql
既然我们知道什么是PID,以及如何找到特定进程的PID,我们就可以进入下一部分并学习如何消除它。
2.在Linux中使用kill命令杀死一个进程
在使用kill命令之前,我们需要了解一些重要的规则。
- 您只能杀死自己的用户标识所拥有的进程
- 您无法杀死其他用户的进程
- 您无法杀死系统进程(除非您是超级用户)
- root用户可以杀死任何其他用户和任何系统进程的进程
当我们使用kill命令终止进程时,实际上是将特定信号发送到要终止的PID控制器。 kill命令使用以下信号:
1 = Hung up 9 = Kill 15 = Terminate
挂断信号很少使用。 大多数情况下,我们使用终止信号,如果该信号不起作用,则可以使用终止信号。
因此,一旦找到要终止的进程的PID,请使用前面介绍的方法之一,就可以使用以下命令 杀死-9 PID杀死该特定PID的进程。
例如,如果PID为6738,则可以使用以下命令:
kill -9 6738
3.在Linux中使用pkill命令杀死该进程
如果要使用进程名称而不是其PID来杀死它,则可以使用pkill命令。 例如,如果我们要杀死的进程称为MySQL,那么我们可以使用以下命令将其杀死:
pkill mysql
4.在Linux中使用killall命令杀死该进程
前两个命令仅用于杀死一个特定进程。 但是,如果我们想杀死一个进程及其所有子进程,则可以使用以下命令 杀死所有:
killall mysql
在此示例中,我们将终止MySQL进程及其所有子进程。
这些是Linux中最常见的进程终止示例。