在 Ubuntu 上发现 Python 进程 CPU 或内存占用很高,通常不是 Python 本身的问题,而是某个由 Python 写的程序/服务在干活或出错了。下面按常见原因给你梳理一下。
Ubuntu 里很多系统组件是用 Python 写的,例如:
apt、apt-getunattended-upgrades(自动更新)ubuntu-software / snapnetworkd-dispatchercron 里跑的 Python 脚本✅ 检查方式:
top
或
ps aux | grep python
如果你看到:
/usr/bin/python3 /usr/bin/unattended-upgrade
那就是系统自动更新在跑。
这是 CPU 高占用的头号原因。
systemctl status unattended-upgrades
临时关闭:
sudo systemctl stop unattended-upgrades
长期关闭(不推荐服务器):
sudo dpkg-reconfigure unattended-upgrades
可以用:
py-spy top --pid <PID>
或
htop
crontab -l
sudo crontab -l
有时候 Python 脚本:
Snap 应用(如 VS Code、Chromium)内部常带 Python。
snap list
| 现象 | 可能原因 |
|---|---|
| CPU 高 | 死循环、计算任务、更新 |
| 内存高 | 内存泄漏、爬虫、缓存未释放 |
| 突然暴涨 | OOM、异常脚本 |
top
找到 Python PID
ps -fp <PID>
看是:
可以告诉我:
top 里看到的具体进程名我可以直接帮你判断是“正常现象”还是“需要修的问题”。