如何在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中最常见的进程终止示例。

Sidebar