在 Linux 中,杀死(终止)进程常见有以下几种方式,按常用程度和安全程度从高到低说明:
ps 查进程ps aux | grep 进程名
示例:
ps aux | grep nginx
输出中第二列就是 PID。
pidofpidof 进程名
示例:
pidof nginx
pgrep(最方便)pgrep -l 进程名
kill 命令终止进程kill PID
等价于:
kill -15 PID
-15(SIGTERM):优雅终止,进程可以清理资源
kill -9 PID
-9(SIGKILL):强制杀死,进程无法捕获或忽略
pkill(推荐)pkill 进程名
强制杀:
pkill -9 进程名
killallkillall 进程名
强制杀:
killall -9 进程名
⚠️ 注意:killall 会杀掉所有同名进程
lsof -i:端口号
或
netstat -tulpn | grep 端口号
kill -9 PID
jobs # 查看后台任务
kill %1 # 杀掉第 1 个任务
| 原因 | 说明 |
|---|---|
| 僵尸进程 | 已结束,等待父进程回收 |
| 内核线程 | 不能被杀 |
| 权限不足 | 使用 sudo |
| 进程进入 D 状态 | 等待 I/O,无法被杀 |
ps aux | grep 进程名
kill PID
kill -9 PID
pkill 进程名
killall 进程名
如果你愿意,可以把具体进程名 / 端口 / 报错信息发给我,我可以帮你精准给出命令 ✅