昨天遇到了服務器很卡的問題,重啓下及清理下服務器,當時正常了,但今天又從新遠程服務器時,一直在鏈接中,最終是超時失敗處理; bash
其實這個問題早幾回就已經出現過,但沒上心,畢竟重啓大法好,並且多是由於一直以來的腳本致使的,所以沒怎麼管;服務器
但如今是重啓後,就沒跑腳本了,依然出現這狀況,不能忍,所以就一塊兒看看這個問題,篇幅很短,2-3分鐘便可;網站
第一反應就是上阿里雲遠程看看,看到的內容是這樣的: 阿里雲
密密麻麻一堆內容,但都是重複的,隨便挑個關鍵詞,直接某度搜索,如systemd-logind
,會看到如下內容: spa
看描述,跟Jb遇到的類似,那這玩意是什麼? 3d
看描述,是個系統服務啊,難道正如網上說的,這玩意會一直佔用CPU?所以嘗試了網上提供的解決方案-關閉systemd-logind
:日誌
systemctl stop systemd-logind
複製代碼
可是試了下,無論用啊。。 code
那就說明問題不是它,可是呢,一直遠程失敗,並且服務很卡,感受就是CPU一直被佔用,那就用top
來看下吧:cdn
可是,由於服務器太卡了,輸入一個字母等半天,所以決定重啓服務器,重啓後用top
觀察: blog
結果發現一塊兒來,就各類awk、sh、kill
等各類系統命令佔用那麼高的CPU?第一反應就是什麼鬼?
繼續放着觀察,結果過幾分鐘,佔比開始變了:
syslog
是系統日誌啊,爲啥會一直記錄日誌?
繼續往下翻top
的記錄,底部有新發現:
後面的記錄都是跟上圖同樣,重複的;那問題來了,systemd_conjestion_helper
是什麼?
一開始覺得是系統腳本,可是網站找了半天,沒有這樣的文件名啊;既然如此,就下載下來吧;
有興趣的小夥伴可自行下載:
連接:https://pan.baidu.com/s/1h6q4oOxHJL7BjS0fwas_dQ
提取碼:ovbb
複製代碼
打開文件,看頂部註釋信息:
寫着makeself
,不知道是什麼,就網上找下:
這,一重啓服務器就自動跑這個,是執行程序,而且網上沒查到相似信息,這TM是被搞了?
順着上面的截圖,這個systemd_conjestion_helper
是在tmp
目錄,那就看看這個目錄下有什麼?
臥槽,好多東西,由於不懂,因此不知道有啥用,可是systemd_conjestion_helper
絕逼有問題。。
再看看,下面有個root
目錄,裏面全都是.sh
。。
再看回剛下載的systemd_conjestion_helper
文件,內容太多了,不會一一看,直接搜索.sh
,發現有匹配結果:
行吧,雖然不知道這些是什麼,可是感受跟它們脫不了關係,所以直接把帶有systemd
的文件所有rm
掉;
而後再重啓服務器,開機持續觀察top,至今4個小時暫時還沒問題,至少還沒出現單項佔用CPU超過5%的進程;
這問題應該是算到此結束了,這個問題,並不難,可是由於對這塊不瞭解,花了不少時間去嘗試跟查閱資料,也從沒懷疑過服務器被幹的狀況,一直覺得是本身服務器太爛致使的,也側面反映出自身對Linux這塊的不熟悉;
至於爲何會被搞,多是以前在公網搭了個上傳文件的功能,雖然只開放了幾天,但由於寫了個帖子,可能就被人利用了,建議能別放公網就儘可能放內網。。
最後謝謝全乾工程師@老羅的幫忙,否則一我的折騰半天都不知所云;