如何在 Linux 中终止进程
本页内容
- 什么是 Linux 中的进程?
- 如何在 Linux 中终止进程
- - 使用 kill 命令
- - 使用 killall 命令
- - 使用 xkill 命令
- - 使用 pkill 命令
- - 使用 top 命令
- EventLog Analyzer 如何帮助进行 Linux 监控
如果您曾遇到过在 Linux 系统 上应用程序突然冻结或无响应的情况,您一定知道那种挫败感。该应用程序可能仍在后台运行,占用系统资源,阻止您重新启动它。无响应的进程,无论是占用过多的 CPU 还是内存,都可能严重影响系统稳定性。本文将介绍如何使用基本的 Linux 命令识别并终止无响应的进程。
什么是 Linux 中的进程?
在深入了解如何在 Linux 中终止进程之前,了解进程的定义非常重要。在 Linux 中,进程是正在运行的程序的一个实例,每个实例都有一个唯一的标识符,称为进程 ID(PID)。查找进程的 PID 是必需的,因为 Linux 命令需要它来定位并终止无响应的进程。
要查找进程的 PID,请使用以下命令:
- “ps” 命令及其“-p”选项: ps -p 显示指定 PID 的进程信息。
- “pidof” 命令: pidof 显示指定名称进程的 PID。
如何在 Linux 中终止进程
Linux 提供以下命令来通过命令行终止进程:
- kill: 通过 PID 终止 Linux 中的进程。
- killall: 通过名称终止 Linux 中的进程。
- xkill: 通过点击窗口终止进程(适用于图形应用程序)。
- pkill: 根据名称、用户或其他属性终止进程。
- top: 交互式监控并直接从命令行界面终止进程。
要通过 PID 停止进程,您必须知道该进程的 PID。
使用 Linux kill 命令停止进程
“kill” 命令允许您通过指定 PID 来终止进程。
Syntax: kill <PID>
例如,要终止 PID 为 3827 的 Chrome 进程,您可以使用,
$ kill 3827
默认情况下,该命令发送 SIGTERM 信号,使进程能够优雅地关闭并完成任何必要的清理工作后终止。指定 PID 的进程将接收此信号,并可在终止前保存数据或关闭打开的文件。这是终止进程的首选方法。
“kill” 命令还允许您指定其他信号。Linux 终端中的 “Kill - l” 命令可帮助您查看所有信号的完整列表。以下列出了一些常用信号。
| 信号 | 描述 | 语法 |
|---|---|---|
| SIGTERM | kill 命令默认发送的信号,用于优雅地终止进程 | kill -1 <PID> |
| SIGKILL | 强制立即终止进程的信号,不允许清理。 | kill -9 <PID> |
| SIGSTOP | 用于暂停或挂起进程的信号。 | kill -19 <PID> |
| SIGCHLD | 当子进程终止或停止时发送给父进程的信号。 | kill -17 <PID> |
除了这些用于终止进程的核心信号外,Linux 还提供了其他信号,如下所示,这些信号通常与终止进程结合使用。
| 信号 | 描述 | 语法 |
|---|---|---|
| SIGHUP | 用于重新加载进程的挂断信号 | kill -1 <PID> |
| SIGILL | 当进程尝试执行非法指令时发送的信号 | kill -4 <PID> |
| SIGCONT | 用于恢复暂停进程的继续信号 | kill -18 <PID> |
| SIGNTSOP | 按下 Ctrl+Z 时发送的终端停止信号 | kill -20 <PID> |
使用 "killall" 命令在 Linux 中终止进程
如果您知道进程的确切名称,可以使用 "killall" 命令终止所有具有特定名称的进程。例如,要终止所有 Chrome 实例,您可以使用:killall chrome
虽然 "killall" 命令很方便,但它可能无法捕获所有进程实例,尤其是在运行多个版本或实例时。在这种情况下,您可能需要使用带有特定 PID 的 "kill" 命令。
使用 "xkill" 命令在 Linux 中终止进程
Linux 中的 "xkill" 命令提供了一种快速简便的方法来终止无响应的图形应用程序。如果遇到无法关闭的冻结窗口,"xkill" 命令允许您通过点击窗口来终止它。
使用 "xkill" 命令终止进程,请按照以下步骤操作:
- 启动终端: 在应用菜单中搜索“Open Terminal”或使用快捷键 (Ctrl+Alt+T) 启动终端。
-
运行 xkill 命令: 输入命令并按 Enter 后,光标将变为十字或骷髅图标。
Syntax: xkill -
点击无响应的窗口: 光标变更后,点击您想关闭的窗口。与该窗口关联的进程将立即终止。
当您需要快速关闭无响应的应用程序而无需查找其进程 ID 时,xkill 命令特别有用。
使用 "pkill" 命令在 Linux 中终止进程
"pkill" 命令提供了更灵活的 Linux 进程终止方式。与需要知道进程 ID 的 "kill" 命令不同,"pkill" 命令允许您根据进程名称、用户或其他属性终止进程。
使用 "pkill" 命令终止进程,请按照以下步骤操作:
-
按名称终止进程: 此命令会终止所有匹配指定名称的进程。
Syntax: pkill process_name -
按用户定位进程: 要终止特定用户运行的进程,请使用:
Syntax: pkill -u username process_name将 username 替换为用户名称,将 process_name 替换为您希望终止的进程名称。
-
使用特定信号: 默认情况下,"pkill" 命令发送 SIGTERM 信号,但您可以根据需要发送不同的信号。要使用 SIGKILL 强制终止进程,请运行:
Syntax: pkill -9 process_name当您需要终止多个进程实例或在多用户环境中管理进程时,"pkill" 命令特别有用。
使用 "top" 命令在 Linux 中终止进程
Linux 中的 top 命令显示系统运行进程和资源使用的实时信息。它提供活动进程的更新列表,包括 CPU 使用率、内存使用率、进程 ID (PID)、用户等详细信息。
当 "top" 命令运行时,您可以找到想要终止的进程,并按照以下步骤操作:
-
打开终端,输入 top 并按 Enter。这将显示系统进程和资源使用的实时信息。
Syntax: top - 通过 PID 定位您想终止的进程。在 top 运行时按 k。
- 系统会提示您输入要终止的进程 PID。
- 默认情况下,top 使用 SIGTERM 信号(15)。您可以按 Enter 使用默认信号,或根据需要指定其他信号。
EventLog Analyzer 如何帮助进行 Linux 监控
ManageEngine EventLog Analyzer 是一款全面的 日志管理 和 合规工具,能够有效监控您的 Linux 环境。它作为集中式 syslog 服务器,自动解析所有 Linux 发行版的 syslog,以监控性能、健康状况并确保安全。该强大的日志管理工具提供用户登录、注销、关键安全事件、用户账户管理变更等的洞察。此外,其 文件完整性监控 (FIM) 功能监控 Linux 文件系统的更改,并实时提醒您未经授权的修改。










