运行中的程序称为进程。Shell、Web Server、Python 程序和后台服务都会对应进程。每个运行实例都有 PID;程序重启后通常获得新 PID,因此 PID 不是程序永久编号。
查看进程
ps 显示与当前终端相关的进程,连 ps 自己也会短暂出现在结果中。ps aux 提供系统范围的用户、PID、CPU、内存和命令快照。ps aux | grep nginx 可筛选 nginx,但也可能匹配 grep 自己。
top 持续刷新运行时间、CPU、内存、进程数量和资源消耗,通常按 q 退出。htop 更友好但不保证已安装,所以 top 是可靠基础工具。
1 · 识别ps aux / top
2 · 正常终止kill PID → SIGTERM
3 · 最后手段kill -9 PID → SIGKILL
信号与安全停止
kill 2451 默认发送 SIGTERM,请求进程正常结束并给它清理文件、状态和连接的机会。如果进程完全无响应,kill -9 2451 发送 SIGKILL,由内核立即终止,不给清理机会,因此不应作为第一选择。
pkill firefox 按名称匹配,可能影响多个进程;初学时先找 PID 再 kill 更能明确目标。前台持续命令如 ping example.com 通常可用 Ctrl+C 中断。
不要随意停止陌生系统进程
结束进程前应确认:谁启动了它、属于哪个服务、为何消耗资源、停止会影响谁。高 CPU 不等于应立即 kill -9;关键进程停止可能造成服务中断或远程连接断开。
默认顺序:确认目标 → SIGTERM → 等待并验证 → 只有确实无响应才考虑 SIGKILL。
互动实验
进程信号模拟器
访问权限免费
backup-worker
PID 2310先选中进程,再优先发送 SIGTERM。
知识测验
题目
已确认 PID 2451 是需要停止的应用进程。首先应尝试什么?
知识测验
题目
需要持续观察某进程 CPU 是否一直升高,应优先使用?
动手练习
调查失控的 Python 任务
服务器 CPU 告警指向 report.py。写出从确认到安全停止的命令序列,不要直接 kill -9。
- 查看系统进程并筛选 report.py。
- 用 top 持续确认资源占用,并记录目标 PID。
- 向示例 PID 2451 发送正常终止信号。
- 等待后验证目标是否仍存在;仅在确认无响应后写出最后手段。