您現在的位置是:首頁 > 技術教程

inode滿了怎麽清理

曙光部落格曙光2020-12-26 08:23:28【技術教程】

今日曙光訪問自己另外壹個網站,發現出現數據庫鏈接錯誤,排查發現所在伺服器網站全部如此,緊急排查後,發現出現如下錯誤提示:No space left on device (28)。

搜索網上的壹些方法,查看磁盤信息,使用df -h命令,顯示磁盤尚有余量,使用df -i命令,顯示問題所在,是inode滿了。
 
inode滿了
  Inode譯成中文就是索引節點,每個存儲設備(例如硬盤)或存儲設備的分區被格式化為文件系統後,應該有兩部份,一部份是inode另一部份是 Block,Block是用來存儲數據用的。而inode呢,就是用來存儲這些數據的信息,這些信息包括文件大小、屬主、歸屬的用戶組、讀寫權限等。 inode為每個文件進行信息索引,所以就有了inode的數值。操作系統根據指令,能通過inode值最快的找到相對應的文件。

那麼inode滿了怎麼清理呢

首先使用 for i in /*; do echo $i; find $i | wc -l; done 命令排查大量文件所在目录
inode滿了怎麼清理
可以看到/home目錄下有1116190個數據,和inode滿了的1179648數據量接近,基本可以確定是home目錄下的某個文件夾內數據量過多了。

繼續使用上面的命令,

for i in /home/*; do echo $i; find $i | wc -l; done
 
這裏要註意,因為知道是/home目錄下,所以要將/home加入命令中,如上所示。
inode

通過詞方法,可以看到在某個網站的/runtime目錄下有1094371個數據,這是網站數據緩存,使用命令刪除。

當然,每個網站的具體配置是不同的,大家知道這個方法,找到數據量最大的目錄進行清理即可。
inode滿了怎麽清理

再次使用df -i命令,可以看到inode顯示正常了。

文章評論

    共有條評論來說兩句吧...

    用戶名:

    驗證碼: