Linux进程占用100%CPU排查

服务器CPU长期处于100%时,网站会变慢甚至宕机。
很多新手遇到这种情况会慌,其实只要按下面几步操作,就能快速找到是哪个进程在吃CPU,以及它正不正常。

准备工作:确保你能登录并观察到系统状态

你需要能通过SSH连接到服务器,并且拥有root权限或至少能使用sudo。
常用Linux发行版(CentOS、Ubuntu、Debian)都自带top和ps命令,基础排查不需要额外安装。
如果喜欢更直观的界面,可以先用包管理器安装htop(yum install -y htop或apt install -y htop),但后面步骤仍以更通用的top为例。

第一步:用top命令一秒找到CPU高峰元凶

登录后直接输入top,回车。
你会看到一个实时刷新的进程列表。
默认是按CPU使用率排序的,但为了保险,按一下键盘上的大写P(Shift+P)确保按%CPU从高到低排序。
列表中第一行显示总CPU和内存使用率,下面的进程列表里,最上面那个就是CPU占用最高的进程。
记下它的PID(第一列的数字)。

如果看到某个进程CPU占用超过90%甚至100%,那就找对了。
如果列表中有多个进程CPU都很高,可能需要逐一分析。
按q退出top。

第二步:用ps命令获取进程详细信息

知道PID后,用下面命令查看这个进程的完整命令行、用户、启动时间等信息,帮助判断它是不是正常的业务进程:

ps -p PID -o pid,ppid,user,%cpu,etime,args

将PID替换成你记下的数字。
输出会显示:

  • 用户(user):如果是root或www-data,可能是系统服务或网站进程;如果是随机名称(如nobody或陌生字母),要警惕。
  • 运行时间(etime):如果刚刚启动几秒但CPU就满了,很可能是异常进程。
  • 命令行(args):如果是/usr/sbin/httpd或java -jar app.jar,大概率是正常业务;如果是/tmp/...或./...且文件名很奇怪,多半是中招了。

如果想进一步看进程打开了哪些网络连接,可以加上lsof -p PID(需要安装lsof),重点检查有没有连接到外网的陌生IP,很多挖矿病毒会外联矿池。

第三步:判断进程性质并决定处理方式

正常业务进程(如Nginx、MySQL、Python应用)

如果CPU高是因为高峰期流量大,可以先检查是否有必要扩容,或者优化代码。
临时应对可以使用renice -n 19 -p PID降低进程优先级,或者用cpulimit -p PID -l 50限制CPU使用率不超过50%。
但不建议长期使用,最好从根源解决。

异常进程(挖矿、后门、可疑脚本)

如果进程名可疑(如kswapd0、xmr、sshd的伪装名),或者路径不在标准系统目录,基本可以判定是恶意软件。
先执行kill -15 PID尝试优雅终止,如果不行再kill -9 PID强行杀掉。
之后务必删除该进程的启动文件,并检查crontab(crontab -l)、/etc/rc.local、/etc/systemd/system/等位置是否有定时启动项。

避坑指南:做这些检查前不要冲动

  1. 不要看到CPU高就直接重启服务器。先找到进程再决定操作,盲目重启可能导致恶意进程随系统自启,问题依旧。
  2. 不要直接kill所有高CPU进程。例如mysqld在大量查询时CPU高是正常的,杀掉会导致数据库崩溃。先确认身份。
  3. 注意观察top输出中的WAIT或iowait,如果CPU高但进程列表里没有明显占用,可能是磁盘I/O瓶颈(iostat -x 1可查看)。
  4. 有些挖矿进程会使用类似系统进程名的伪装,例如sysuptime冒充系统进程,要用ps -ef仔细看参数。

效果验证:确认CPU恢复并检查残留

处理完成后再次运行top,应该看到%CPU总和使用率下降,之前异常进程不复存在。
如果依然很高,排错可能遗漏了其他进程,或者恶意程序有守护进程重生。
运行pstree -a可以查看进程树,看看有没有隐藏的子进程。
最后建议用netstat -antp | grep ESTABLISHED检查外联连接是否正常。

完成以上步骤后,你的CPU应该恢复正常。
如果你在处理Linux进程占用100%CPU排查时遇到本文没覆盖到的特殊情况,欢迎在评论区补充,我会继续帮大家补充手段。

分享到:
上一篇
Linux ssh密钥登录禁用密码
下一篇
Linux服务器时间同步chrony:从安装到验证完整教程
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意