16. Linux进程管理与系统监控
摘要:电脑卡顿怎么办?本文教你用 Top 和 Htop 揪出资源占用大户。详解 ps 查看进程、kill 结束进程(包括强制结束)的技巧,以及后台任务管理。告别盲目重启,学会像系统管理员一样精准定位并解决性能问题。
电脑变卡、风扇狂转、应用无响应,本质上就三类原因:CPU 忙、内存不够、磁盘/IO 卡住。这一章用几组常用工具把问题定位到“谁在干什么”,而不是凭感觉重启。
1. 命令行任务管理器:Top 与 Htop
Top (老牌经典)
输入 top,你会看到一个实时刷新的列表。
Htop (彩色升级版 - 推荐)
比 Top 更直观,支持鼠标操作。
- 1. 安装:
sudo apt install htop
2. 进程管理命令
ps (Process Status)
查看当前瞬间的进程状态。
ps aux # 显示所有进程的详细信息
ps aux | grep nginx # 查找 nginx 相关的进程
kill
结束进程。
kill PID # 优雅地结束进程 (发送 SIGTERM)
kill -9 PID # 强制结束进程 (发送 SIGKILL),慎用!
killall firefox # 按名称结束所有 firefox 进程
一般流程:先 kill,给它一点时间;只有在进程彻底卡死、无法响应时,再考虑 kill -9。-9 是“止损按钮”,但也可能让数据来不及落盘。
后台运行
- • Ctrl + Z: 暂停当前前台任务,放入后台。
- •
command &: 直接在后台运行命令(例如 python server.py &)。
3. 系统资源监控
System Monitor (图形界面)
Ubuntu 自带的类似 Windows 任务管理器的工具。在 Activities 中搜索 "System Monitor"。
btop (极客风)
一个界面极其酷炫的命令行监控工具,甚至支持游戏手柄(误)。
sudo snap install btop
4. 故障排查:先分清是哪类瓶颈
先看整体负载
uptime
输出里会有 load average。它不是“CPU 占用率”,但能快速提示:系统是否长期处于“任务排队”的状态。
CPU 忙:找最吃 CPU 的进程
ps -eo pid,comm,%cpu,%mem --sort=-%cpu | head
内存不够:看是不是在疯狂 swap
free -h
如果 Swap 使用量持续上涨、系统开始明显变慢,通常是内存压力导致。此时比起“杀进程”,更值得先确认:是不是某个应用内存泄漏、浏览器标签页太多、或者容器占用过大。
IO 卡:CPU 不高但整机很慢
常见表现是:CPU 占用不高,但打开文件、启动应用都很慢。这时优先检查磁盘空间(下一章)和哪些进程在大量读写(htop 里也能看到 IO 相关列)。
5. 故障排查实战
场景:电脑突然很卡。
- 3. 发现一个叫
chrome 的进程占用了 100% CPU。 - 4. 选中它,按 F9,选择 SIGKILL,回车。