天天看點

關于inodes占用100%的問題及解決方法

問題:今天我們郵件伺服器收發不了郵件了,而且連接配接到伺服器上開啟服務都開不了,起始以為磁盤空間不足,df 看了一下

檢視磁盤使用情況

<a href="https://s3.51cto.com/wyfs02/M01/8F/AE/wKioL1jps1HyWTWCAABLOifzikU656.png-wh_500x0-wm_3-wmp_4-s_723293404.png" target="_blank"></a>

檢視inode使用情況

<a href="https://s3.51cto.com/wyfs02/M01/8F/AE/wKioL1jps5fQlZvzAABNa3kJMnE888.png-wh_500x0-wm_3-wmp_4-s_3860810087.png" target="_blank"></a>

解決方法:通過以下腳本進行檢查,檢視到底哪個目錄下面的檔案最多:

for i in /*; do echo $i; find $i | wc -l; done(如果确定是某個目錄下面,則/轉換為該目錄絕對路徑,如/var/spool,則使用for i in /var/spool/*; do echo $i; find $i | wc -l; done)

最終發現/var/soppl目錄最多。然後又進一步确定是/var/spool/amavisd/quarantine 目錄下面有上百萬個檔案,機器已經無法正常顯示了,後來百度檢視了下這個目錄是郵件伺服器,處理垃圾郵件活病毒郵件隔離的,明白原因了,删除該目錄下所有檔案;使用xargs指令來删除數量比較多的檔案:

ls | xargs -n 10 rm -rf

執行了大約10多小時之後,最終解決問題。

參考博文:http://www.linuxidc.com/Linux/2014-02/96836.htm

     本文轉自1321385590 51CTO部落格,原文連結:http://blog.51cto.com/linux10000/1914248,如需轉載請自行聯系原作者