inode問題定位與解決

inode問題定位與解決

問題描述

? 最近在登陸云服務(wù)器的時候發(fā)現(xiàn)服務(wù)器登陸不上,看了下監(jiān)控已經(jīng)OOM了,只能重啟服務(wù)器,重啟了以后可以登陸上去,但是發(fā)現(xiàn)一些命令總是報錯,顯示的是磁盤空間已滿,但是使用df -Th的時候發(fā)現(xiàn)磁盤并沒有滿,所以懷疑是inode節(jié)點(diǎn)的問題,使用命令發(fā)現(xiàn)真的是inode節(jié)點(diǎn)的問題:

df -i

分析原因

? 雖然發(fā)現(xiàn)了問題,因?yàn)槭褂眠@個機(jī)器項(xiàng)目是外包出去的,外包那邊也不清楚怎么回事,最初懷疑是日志的問題,但是發(fā)現(xiàn)日志并沒有打太多,這就很糾結(jié)了,那應(yīng)該怎么統(tǒng)計出來是哪里的文件太多了哪?原本打算使用tree命令,但是第一,inode已經(jīng)滿了,軟件也裝不上。第二,tree不可能統(tǒng)計出來也相當(dāng)?shù)穆闊?。一個一個的找也不太顯示,于是自己編寫了一行命令:

for i in /*; do echo i; find i | wc -l; done

發(fā)現(xiàn)了文件大多都積壓在maildrop目錄下面

解決辦法

? 解決辦法就是刪除這些文件,但是刪的時候問題又來了,這些文件(大約100多萬)如果直接以rm -rf刪除是非常慢的,于是網(wǎng)上搜了一個命令,還沒有來得及細(xì)看

find 目錄 -type f -name '*' -print0 | xargs -0 rm 

? 這下問題解決了,還要分析一下為什么會堆積這么多的文件,網(wǎng)上一搜到處都是,就直接把原因粘貼過來了.

產(chǎn)生原因

? linux在執(zhí)行cron時,會將cron執(zhí)行腳本中的output和warning信息,都會以郵件的形式發(fā)送Cron所有者, 而由于客戶環(huán)境中的sendmail和postfix沒有正常運(yùn)行,導(dǎo)致郵件發(fā)送不成功,全部小文件堆積在了maildrop目錄下面,而且沒有自動清理轉(zhuǎn)換的機(jī)制,所以長達(dá)一年的時間,此目錄已堆積了大量的文件。

解決方法:

在cron的開頭加上如下字段

MAILTO=""

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 第一章 1.Linux是一套免費(fèi)使用和自由傳播的類UNIX操作系統(tǒng),它可以基于Intel x86系列處理器以及Cy...
    yansicing閱讀 5,592評論 0 9
  • 觀其大綱 第1部分Linux的基礎(chǔ)知識第1章Linux概述第2章Linux系統(tǒng)的安裝KickStart開始自動安裝...
    周少言閱讀 1,675評論 1 10
  • 一個基本的計算機(jī)系統(tǒng)由“硬件”和“軟件”組成,一臺Linux設(shè)備,主要的組成如下圖所示: 一般情況下,我們所說的L...
    時待吾閱讀 1,800評論 0 16
  • 一、Python簡介和環(huán)境搭建以及pip的安裝 4課時實(shí)驗(yàn)課主要內(nèi)容 【Python簡介】: Python 是一個...
    _小老虎_閱讀 6,350評論 0 10
  • 我覺得每個做父母的都希望自己的孩子好,這樣他們才不會擔(dān)心,這樣他們才開心,我的父母也是這樣。我覺得我好了,我才有能...
    燕子飛呀閱讀 301評論 0 0

友情鏈接更多精彩內(nèi)容