温馨提示×

Linux 进程如何停止

小樊
36
2026-08-31 10:12:41
栏目: 智能运维

在 Linux 中,“停止进程”可以有多种含义,常见场景和对应方法如下:


一、终止进程(最常用)

1️⃣ 使用 kill(推荐)

kill 默认发送 SIGTERM(15),让进程优雅退出。

kill PID

如果进程不响应,可强制终止(SIGKILL,不可捕获):

kill -9 PID

-9 是最后的手段,可能导致数据丢失。


2️⃣ 使用 pkill(按名称)

pkill nginx

强制终止:

pkill -9 nginx

3️⃣ 使用 killall

killall nginx

强制:

killall -9 nginx

⚠️ 会杀掉同名的所有进程。


二、前台进程:快捷键停止

✅ 暂停(不是退出)

Ctrl + Z

进程进入 后台暂停状态(Stopped)

查看:

jobs

恢复:

fg   # 恢复到前台
bg   # 后台继续运行

三、终止前台进程

Ctrl + C

发送 SIGINT,常用于终止正在运行的命令。


四、停止服务(系统服务)

systemd(最常见)

systemctl stop nginx

禁止开机启动:

systemctl disable nginx

五、强制停止“顽固进程”

1️⃣ 查找进程

ps aux | grep nginx

top

2️⃣ 强制杀掉

kill -9 PID

六、进程状态说明(理解“停止”)

状态 含义
R 运行中
S 睡眠(可中断)
D 不可中断睡眠
T 已停止(Ctrl+Z)
Z 僵尸进程
X 已死亡

七、僵尸进程怎么办?

僵尸进程(Z)不能被 kill,需要杀掉它的父进程:

ps -ef | grep defunct

总结口诀 ✅

  • 优雅停止kill PID
  • 强制停止kill -9 PID
  • 前台停止Ctrl + C
  • 暂停进程Ctrl + Z
  • 服务停止systemctl stop xxx

如果你有具体场景(比如:Docker 进程、Java 服务、卡死进程),我可以给你更精确的方案。

0