记录一次ubuntu服务器CPU占用100%的问题排查过程

Ubuntu恶意文件导致CPU占用过高的解决方案 今天在做一个系统的时候发现了一个问题,服务器卡得要死,排查发现内存使用正常,硬盘状态正常,但是发现CPU使用率达到了100% 1. 命令 top 阅读详情
AI摘要

本文介绍了一种在Ubuntu服务器上出现的挖矿病毒现象及解决方法。通过分析系统资源使用情况,发现异常进程并追踪到病毒文件及定时任务,最终成功清除病毒。

最近在ubuntu服务器上跑深度学习的训练程序,运行一段时间程序就会被kill,给实验带来了不少麻烦。作为linux小白,着实是被这个问题困扰了一段时间,现将最后成功的方法记录下来。

关于这类问题,最常见的原因是系统内存不足,触发了OOM killer。于是先用htop查看系统的资源使用情况:

在这里插入图片描述

发现系统内存仍然是充足的,但是所有CPU核心都是100%占用。所以应该不是内存不足的问题,而是因为CPU爆满了。CPU主要是被一批“python”进程占用了。尽管这批进程的启动命令都显示为“python”,但没有参数,看起来不像正常的程序。用kill -9命令杀死这些进程,发现过一段时间又会重新出现。由于服务器之前中过挖矿病毒,所以这次也怀疑是中了挖矿病毒。

用 “ll /proc/进程ID” 查看进程信息(由于中间曾经杀死过进程,这里截的两张图的进程ID号不同):

在这里插入图片描述

发现进程是由/usr/bin/-bash文件启动的,且该文件已被删除。可以猜测这个文件只是一个临时文件,不是真正的病毒文件,这个路径可能也是临时的,真正的病毒文件可能每次会随机选择一个目录生成临时文件,启动进程后再把临时文件删除,以便隐藏自己。

由于这些进程被杀死后又会重新出现,所以怀疑其背后还有守护进程或者定时任务。首先查看系统的定时任务,ubuntu的/etc目录下有cron.weekly、cron.daily、cron.hourly等存放定时任务的文件夹,由于上述异常进程被杀死后不到一小时又重新出现,所以先查看cron.hourly,进入/etc/cron.hourly,查看目前都有哪些定时脚本:

Linux CPU 占用率 100% 排查 curl http://localhost:9999/api/cpu/10000000000,发现 CPU 一会儿就飙到了 100%,接下来我们按五步法探个究竟。对于线上问题定位来说,分秒必争,所以我们在编码过程中,除了要实现业务功能交付,还要追求代码质量,要写出更高效、更优雅的代码。从图中,我们可以看到进程 pid 为 11168 的占用 CPU 是最高的,直接是 100%。找到对应的代码看一下,果真如此,问题已定位,优化代码逻辑吧~~~~ 阅读详情

相关推荐

MySQL服务器CPU 100%排查全指南:从现象到根源的深度解析

MySQL CPU 100%的排查过程,本质是"定位资源消耗源头→消除不合理消耗"的过程。先诊断后动手:避免未定位问题就盲目加索引或调整配置,可能引入新问题。数据驱动分析:依赖慢查询日志、执行计划等客观数据,而非经验判断。从SQL到架构:优先优化SQL和索引(成本低、见效快),再考虑分库分表等架构调整。通过建立"发现问题→定位根源→优化解决→持续监控"的完整流程,不仅能快速解决当前CPU高负载问题,更能提升数据库整体性能,为业务稳定运行提供保障。

LBJ_2016_1984_12_30 1387

CPU性能问题排查实战:从定位高占用进程到系统优化

CPU性能优化是系统运维和开发中的核心议题,其本质在于高效管理计算资源。从原理上讲,操作系统通过进程调度分配CPU时间片,当某个进程异常占用大量时间片时,便会导致系统响应迟缓、资源耗尽。掌握CPU性能诊断技术,对于保障服务稳定性、提升用户体验具有重要价值。无论是服务器运维、开发环境调试,还是解决个人电脑卡顿,快速定位并分析高CPU占用进程都是关键技能。本文聚焦于实战,系统介绍在Windows与Linux环境下,如何运用任务管理器、资源监视器、top/htop、perf等工具链,精准定位如‘服务主机’异常、后

weixin_30882895的博客 283

Ubuntu服务器挖矿病毒排查与清除实战:从Python进程异常到系统加固

在Linux服务器运维中,进程管理与系统安全监控是保障服务稳定的基础。当服务器出现CPU使用率异常飙高、系统响应变慢时,往往意味着资源被恶意占用,其背后原理常与未授权进程或恶意软件有关。这类问题不仅消耗计算资源,导致电费与云成本激增,更暴露了系统存在的安全漏洞。从技术价值看,掌握服务器入侵检测与应急响应能力,是运维工程师保障业务连续性的核心技能。典型的应用场景包括Web服务器性能骤降排查、云计算实例资源异常消耗分析等。本文聚焦于一种伪装成Python进程的挖矿病毒,通过分析其利用计划任务(Cron)实现持久

weixin_34241036的博客 330

优化Ubuntu系统以降低CPU使用率

为了提高系统的效率和响应能力,可以采取一些方法来优化Ubuntu系统,并降低CPU的使用率。本文将介绍一些常用的方法和技巧,来帮助您加速Ubuntu系统并降低CPU的使用率。通过更新系统、停止不必要的服务、优化启动项、使用轻量级软件、优化图形效果、禁用不必要的后台进程以及使用优化工具,您可以加速Ubuntu系统并降低CPU的使用率。如果您的系统性能受到影响,您可以降低图形效果的负载。您可以检查并禁用不需要的后台进程。首先,确保您的Ubuntu系统已经更新到最新的版本,并且所有的软件包都是最新的。

InjeProgram的博客 1665

Ubuntu服务器宕机排查记录

环境 :ubuntu 问题症状:服务器内存占用持续增长,性能低下,并发上不去,网络无法ping通,无法登录、无法操作,输入操作无响应。也就是说系统宕机了。 宕机原因 : 先查看线上服务日志,再通过分析Linux系统日志后, 出现内存不足,Linux出于保护机制。 排查思路:分析出内存泄露模块,分析出性能瓶颈,调优JVM 使用工具:jconsole、jprofiler 参考链接 : 服务器宕机排查记...

qq_40907977的博客 7693

Ubuntu零基础入门到精通【1.4讲】:Ubuntu Desktop 与 Ubuntu Server 的区别:一次彻底说清楚!

🏆 本文收录于 《滚雪球学 Ubuntu》 专栏。 本专栏面向有一定计算机基础,但尚未系统学习 Linux / Ubuntu 的读者,采用“滚雪球式学习法”:先装好、再会用、再理解、再优化、再实战,带你从第一次进入 Ubuntu 桌面 / 终端开始,逐步掌握 Ubuntu 的日常使用、命令操作、软件安装、系统配置、开发环境搭建与服务器部署能力。

**My Coding Family** 2173

11.1 【故障排查】Linux服务器故障排查实战:日志分析、系统诊断、常见问题解决技巧

本文详细介绍了Linux服务器故障排查的系统化方法。主要内容包括:1) 故障排查的基本流程和原则,从简单到复杂逐步分析;2) 日志分析技术,涵盖系统日志和应用日志的查看与分析工具;3) 系统诊断方法,包括CPU、内存、磁盘和网络等资源检查;4) 常见问题排查步骤,如服务无法启动、磁盘空间不足等;5) 实用的排查脚本示例,如系统健康检查和故障诊断脚本。文章强调系统化排查思路和日志分析的重要性,并提供了常用命令速查表,帮助运维人员快速定位和解决服务器故障问题。

yonggeit的博客 2896

Linux线上CPU 100%排查实战:从top到eBPF的完整定位链

CPU使用率飙升是系统性能问题中最典型也最棘手的表象,其本质往往指向用户态热点函数、内核态阻塞或资源争用等深层原因。理解CPU时间在用户态与内核态的分布原理,结合`top`/`htop`进程线程识别、`pidstat`时序采样、`perf`火焰图分析、`py-spy`或`jstack`调用栈抓取,以及`/proc/PID/stack`和`bpftrace`内核级追踪,可构建端到端根因定位能力。该方法论广泛适用于Python Flask、Java Spring Boot、Golang等主流后端服务的线上高CP

weixin_34208283的博客 340

Linux服务器CPU 100%排查实战:从top到jstack精准定位热点线程

CPU使用率过高是Linux系统最常见且影响严重的性能问题,本质是进程或线程在用户态/内核态持续占用CPU时间片。其原理涉及调度器分配、上下文切换、系统调用开销及JVM线程状态机等底层机制。技术价值在于快速止损、避免服务雪崩,并为容量规划与代码优化提供数据依据。典型应用场景包括电商大促接口超时、金融交易延迟、IoT设备连接风暴等高并发生产环境。本文聚焦真实故障排查链路,覆盖top字段语义解析、ps快照比对、pstree进程溯源、top -H与jstack线程级定位、以及perf火焰图代码行级归因,特别强化J

weixin_34007906的博客 471

2021年J题:基于STM32F103的周期信号波形识别与参数测量系统设计(立创EDA+SZPT_ZXL)

本文详细复盘了2021年全国大学生电子设计竞赛J题获奖项目,手把手教你如何基于STM32F103微控制器设计并实现周期信号波形识别与参数测量系统。文章深入剖析了硬件电路设计(包括程控放大、工作点抬升与滞回比较器)与核心软件算法(如动态采样、FFT频谱分析与波形识别逻辑),并分享了DMA传输、FFT库使用等实战要点与避坑指南,为嵌入式信号处理与电赛备赛提供了宝贵经验。

weixin_32673065的博客 228

深度学习【46】pix2pixHD

英伟达的pix2pixHD,能够合成高清的2048*1024图片,简直振奋人心。pix2pixHD是我之前介绍过的pix2pix的改进版本,使用多由粗到精的G网络和多尺度D网络(每个D网络都是用了pix2pix中同样的patch技术)。论文一开始用pix2pix尝试合成更高分辨率的图片,但发现效果不好,训练也很不稳定。所以就对pix2pix进行了一顿魔改。我们来看看他们是怎么改进的。由粗到精的G网络

DCD_LIN的博客 1万+

FIFO Generate IP核使用——FIFO写操作详解及Status Flags页配置

本文介绍了FIFO的写操作及Status Flags页的配置信息。

u011565038的博客 2283

自己动手写CPU(1)五级流水线及CPU第一条指令ori

自己动手写CPU(1)五级流水线及CPU第一条指令ori 动机 不知为何研一的自由时间突然多起来,可能人一闲下来就容易焦虑吧,hhhhhh。正好之前看到一本《自己动手写CPU》,就按照此书从头实做一遍MIPS指令集的CPU,也当做对大学课程的总结。之前看龙芯杯比赛的代码震惊到我了,想想那堆大佬本科在搞这东西而我本科在瓜瓜地刷分,感叹人之间的差距真的好大。痛定思痛,还是先动手做起来这才能假意安慰自己,我好像也不错。闲言少叙,让我们开始吧! 由于作者提供了各章实现的具体代码,所以该系列博客主要记录我过程中有哪些

谦豫 7077

CAN通信:EB中配置CAN驱动,配置参数解析

以S32K314芯片说明,其他芯片不同,参数配置也有差异。

zhangxiaio1的博客 2166

5G边缘计算:核心网下沉革命

5G核心网与边缘计算的深度融合,通过UPF下沉、本地流量卸载等关键技术,实现了低时延、高效能的分布式计算架构。该技术将数据处理从核心网向边缘节点转移,支持工业控制、车联网、远程医疗等场景的1-10ms超低时延需求。5G核心网的SBA架构和CUPS设计为边缘计算提供了灵活部署基础,SMF、PCF等网元协同确保业务质量与可靠性。

Qinti_mm的博客 1400

《玩儿起来吧》MATLAB 实时图像处理系列(一二三四)

大家学了图像处理之后,是不是就想学以致用。而要用于生活中,最好的方式就是和摄像头搭配,实现实时图像处理。今天就给大家分享MATLAB实时图像处理的基础方法,希望能帮你快速入门。

HPC_ZY 1万+

PSF(点扩散函数)与去卷积算法消除图像模糊

本文旨在总结图像处理中使用去卷积的传统方法来进行图像去模糊的相关知识。

m0_53607446的博客 6014

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

ideaoverflow
博客等级 码龄10年 1粉丝 1原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值