2022-12-09 15:25:42 +08:00
|
|
|
|
[#]: subject: "How to Find a Process ID and Kill it in Linux [CLI & GUI]"
|
|
|
|
|
[#]: via: "https://www.debugpoint.com/find-process-id-kill-linux/"
|
|
|
|
|
[#]: author: "Arindam https://www.debugpoint.com/author/admin1/"
|
|
|
|
|
[#]: collector: "lkxed"
|
|
|
|
|
[#]: translator: "yzuowei"
|
2022-12-12 10:42:28 +08:00
|
|
|
|
[#]: reviewer: "wxy"
|
|
|
|
|
[#]: publisher: "wxy"
|
|
|
|
|
[#]: url: "https://linux.cn/article-15341-1.html"
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
如何在 Linux 中找到一个进程 ID 并杀死它
|
2022-12-09 15:25:42 +08:00
|
|
|
|
======
|
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
![][0]
|
|
|
|
|
|
|
|
|
|
> 一个简单的教学展示,教你如何找到正在运行中的进程 ID 并杀死它,你可以使用终端或者 GUI,这个方法适用于各类 Linux 发行版。
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
|
|
|
|
你的 Linux 系统中运行的应用可能会让你的电脑变慢,特别是你的电脑配置较低的时候。在 Linux (以及所有其他 OS)中,程序或者应用都携带一个特别的 PID (进程 ID)可供你简单地分辨它们。
|
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
然而,大部分 Linux 初学者用户并不知道如何在 Linux 中寻找运行中的进程并杀死它。在这篇指南中,我们将会解释用不同的方法以杀死 Linux 中的运行进程。这包括了使用终端和 GUI 的方法。
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
|
|
|
|
记住,你只应该杀死未响应的进程,或者你发现应用无法被正常关闭 (针对基于 GUI 的应用)。
|
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
### 如何在 Linux 中找到 PID 并杀掉它们
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
|
|
|
|
在这一部分中,我们首先应该先学会如何找到运行进程的 PID,然后再学习用以杀掉它们的命令:
|
|
|
|
|
|
|
|
|
|
#### 找到正在运行中的进程
|
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
你可以使用命令 `top` 来列出所有正在进行中的进程和它们的 PID,以及其他细节。程序 `top` 在所有 Linux 发行版和所有基于 Unix 的系统中都是默认安装了的。
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
top
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
![Top program output][1]
|
|
|
|
|
|
|
|
|
|
同样地,你可以执行命令 `ps` 附带额外选项来获取某个指定的进程的 PID。例如,你可以使用以下命令来获得 `firefox` 的 PID。
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
ps -el | grep -i firefox
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
![Firefox process id using ps command - example][2]
|
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
现在你已经找到 PID 了,让我们看看你该如何杀掉它。
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
|
|
|
|
#### 杀死运行中的进程
|
|
|
|
|
|
|
|
|
|
使用以下命令,你可以通过进程的名字或者 PID 来杀掉这个正在运行中的进程:
|
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
- `killall`:通过运行进程的名字来杀死进程
|
|
|
|
|
- [kill][3]:通过 PID 来杀死进程
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
|
|
|
|
现在,让我们首先使用进程 `killall` 通过 Firefox 这个名字来杀死它的,命令如下:
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
killall -9 firefox
|
|
|
|
|
```
|
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
- 参数 `-9` 发送了信号 `SIGKILL` 通知 OS 来终止这个进程。
|
2022-12-09 15:25:42 +08:00
|
|
|
|
- 使用以下命令,你也可以列出一些别的信号。
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
kill -l
|
|
|
|
|
```
|
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
同样地,如果你想要通过 PID 来杀死进程,你可以用以下命令:
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
kill -9 <PID>
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
在这个例子中,命令会长这样:
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
kill -9 33665
|
|
|
|
|
```
|
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
让我们看看在不同发行版中,你该如何使用图形用户界面(GUI)来杀死任意进程或应用。
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
### 通过 GUI 寻找 PID 并杀掉
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
|
|
|
|
现在有很多图形界面程序可以枚列进程。大部分 Linux 发行版的桌面环境中已经携带了它们。我们在这里列举出了一些。
|
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
#### GNOME(在 Ubuntu、Fedora 工作站等) & 在 Linux Mint 中
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
在应用菜单中搜索 “system monitor” 并打开它(LCTT 译注:中文桌面环境也可以搜 “system monitor”,我在 Ubuntu 里试过了)。在 “<ruby>进程<rt>Processes</rt></ruby>” 标签页下找到你的进程,右击进程名字打开快捷菜单,选择选项 “<ruby>杀死<rt>Kill</rt></ruby>”。
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
|
|
|
|
![Kill a process in Linux using gnome system monitor][4]
|
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
#### KDE Plasma(Kubuntu、Fedora-KDE 或任何基于 Plasma 的发行版)
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
在应用菜单中搜索并启动 “system monitor”。这会打开以下程序。在左边菜单栏点击“<ruby>进程<rt>Processes</rt></ruby>” ,你因该能看见一列正在运行的程序。你可以右击列表里的进程或应用并选择“<ruby>杀死<rt>Kill</rt></ruby>”来终止进程。
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
|
|
|
|
![System monitor in KDE Plasma][5]
|
|
|
|
|
|
|
|
|
|
#### Xfce 桌面
|
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
Xfce 桌面可以完成这项任务的原生应用是 <ruby>任务管理器<rt>Task Manager</rt></ruby>,你可以通过 “<ruby>应用<rt>Application</rt></ruby> > <ruby>系统<rt>System</rt></ruby> > <ruby>任务管理器<rt>Task manager</rt></ruby>” 来找到它。右击进程名字然后选择“<ruby>杀死<rt>Kill</rt></ruby>”来终止应用或进程。
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
|
|
|
|
![Xfce task manager to kill a process][6]
|
|
|
|
|
|
|
|
|
|
#### 如何在其他桌面或发行版上杀死一个进程或程序
|
|
|
|
|
|
|
|
|
|
如果你找不到任何相似的程序,你可以选择使用终端的方法。或者,你可以使用以下命令来安装 gnome-system-monitor。
|
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
Ubuntu 以及相关发行版:
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
sudo apt install gnome-system-monitor
|
|
|
|
|
```
|
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
Fedora 以及其相关的发行版:
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
sudo dnf install gnome-system-monitor
|
|
|
|
|
```
|
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
还有 Arch Linux:
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
sudo pacman -S gnome-system-monitor
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
### 总结一下
|
|
|
|
|
|
2022-12-12 10:42:28 +08:00
|
|
|
|
这就是你该如何在 Linux 中找到一个运行中的进程的 PID 并杀死它。我们已经解释了不同的方法:你可以通过名字或者 PID 来杀死进程。我希望这对你有所帮助。
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
via: https://www.debugpoint.com/find-process-id-kill-linux/
|
|
|
|
|
|
|
|
|
|
作者:[Arindam][a]
|
|
|
|
|
选题:[lkxed][b]
|
|
|
|
|
译者:[yzuowei](https://github.com/yzuowei)
|
2022-12-12 10:42:28 +08:00
|
|
|
|
校对:[wxy](https://github.com/wxy)
|
2022-12-09 15:25:42 +08:00
|
|
|
|
|
|
|
|
|
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
|
|
|
|
|
|
|
|
|
[a]: https://www.debugpoint.com/author/admin1/
|
|
|
|
|
[b]: https://github.com/lkxed
|
|
|
|
|
[1]: https://www.debugpoint.com/wp-content/uploads/2022/12/Top-program-output.jpg
|
|
|
|
|
[2]: https://www.debugpoint.com/wp-content/uploads/2022/12/Firefox-process-id-using-ps-command-example.jpg
|
|
|
|
|
[3]: https://linux.die.net/man/1/kill
|
|
|
|
|
[4]: https://www.debugpoint.com/wp-content/uploads/2022/12/Kill-a-process-in-Linux-using-gnome-system-monitor.jpg
|
|
|
|
|
[5]: https://www.debugpoint.com/wp-content/uploads/2022/12/System-monitor-in-KDE-Plasma.jpg
|
|
|
|
|
[6]: https://www.debugpoint.com/wp-content/uploads/2022/12/Xfce-task-manager-to-kill-a-process.jpg
|
2022-12-12 10:42:28 +08:00
|
|
|
|
[0]: https://img.linux.net.cn/data/attachment/album/202212/12/103939c8tv41t8391v6886.jpg
|