主頁 > 知識庫 > Linux殺不死的進程之CPU使用率700%解決方法

Linux殺不死的進程之CPU使用率700%解決方法

熱門標簽:征服者快捷酒店地圖標注 漯河電銷外呼系統(tǒng)價格 貴陽語音電銷機器人 咸陽穩(wěn)定外呼系統(tǒng)公司 ec外呼系統(tǒng)怎么樣 天津外呼系統(tǒng)運營商 電銷機器人怎么錄音 貴港市機器人外呼系統(tǒng)團隊 蕪湖呼叫中心外呼系統(tǒng)哪家強

1. 問題發(fā)現(xiàn)

[root@zwlbs3 ~]# top

i. 發(fā)現(xiàn)有個進程CPU使用率居然700%,COMMAND 是一些隨機的字符串組成,完了~ 中標了;第一想到就是“沙雕”它,kill 命令給我上。

[root@zwlbs3 ~]# kill -9 "PID"

ii. 但是發(fā)現(xiàn) kill 該進程平靜一會后又啟動了。

注:老圖復用,PID、COMMAND 都有變化。

2. 查看進程的詳細信息

[root@zwlbs3 ~]# cd /proc/748/
[root@zwlbs3 748]# ls -ial

# "748"是該進程的 PID,根據你的 PID 來查看即可。

如圖:

發(fā)現(xiàn)該進程是在 /dev/shm 目錄下的,/dev/shm 是一個什么目錄呢?

從網上摘下來一段我們解一下 /dev/shm

1) 首先可以看出來/dev/shm是一個設備文件, 可以把/dev/shm看作是系統(tǒng)內存的入口, 可以把它看做是一塊物理存儲設備,一個tmp filesystem, 你可以通過這個設備向內存中讀寫文件, 以加快某些I/O高的操作,比如對一個大型文件頻繁的open, write, read。

2) 據說oracle就利用了/dev/shm(shitou沒用過oracle), 可以通過mount命令列出當前的/dev/shm的掛載的文件系統(tǒng)。

3) 既然是基于內存的文件系統(tǒng),系統(tǒng)重啟后/dev/shm下的文件就不存在了。Linux默認(CentOS)/dev/shm分區(qū)的大小是系統(tǒng)物理內存的50%, 雖說使用/dev/shm對文件操作的效率會高很多。但是目前各發(fā)行軟件中卻很少有使用它的(除了前面提到的Oracle), 可以通過ls /dev/shm查看下面是否有文件, 如果沒有就說明當前系統(tǒng)并沒有使用該設備。

查看 /dev/shm 目錄的有沒有相關文件

[root@zwlbs3 ~]# ls -a /dev/shm/
. ..

# 沒有任何相關的文件,奇怪了。
  • crontab 也沒有相關計劃任務。
  • 使用 which 命令也沒有找到相關的文件。
  • 查看系統(tǒng)日志也是正常,非常奇怪。
  • 幾乎沒有找到該進程相關的文件。

3. 解決辦法

i. 查看某個進程內部線程占用情況分析

[root@zwlbs3 ~]# top -H -p "PID"

ii. 原來有這么多相關的進程,全部 kill 掉

iii. 過來幾分鐘再次檢查,發(fā)現(xiàn)系統(tǒng)負載恢復正常

本以為解決了,結果過了幾個小時檢查發(fā)現(xiàn)又出現(xiàn)了,該死的。

由于生產環(huán)境不方便重啟服務器,被逼無奈情況下只好試試 重啟大法 了。

4. 重啟大法

重啟服務器后一個小時,再次檢查已經恢復正常了,還是 重啟大法 好使。

該惡意程序有什么作用?為何只消耗CPU資源?由于未找到相關文件信息,原因也暫時未清楚。

知道的大佬麻煩告訴我一下,非常感謝!

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。

標簽:東營 濰坊 攀枝花 香港 怒江 西藏 淮北 西寧

巨人網絡通訊聲明:本文標題《Linux殺不死的進程之CPU使用率700%解決方法》,本文關鍵詞  Linux,殺不,死的,進程,之,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Linux殺不死的進程之CPU使用率700%解決方法》相關的同類信息!
  • 本頁收集關于Linux殺不死的進程之CPU使用率700%解決方法的相關信息資訊供網民參考!
  • 推薦文章