西西軟件園多重安全檢測下載網(wǎng)站、值得信賴的軟件下載站!
軟件
軟件
文章
搜索

首頁西西教程Linux → debian系統(tǒng) inode占用100%時硬盤無法寫入文件故障處理

debian系統(tǒng) inode占用100%時硬盤無法寫入文件故障處理

相關(guān)軟件相關(guān)文章發(fā)表評論 來源:朱 茂海時間:2015/5/14 17:38:11字體大。A-A+

作者:朱 茂海點擊:108次評論:0次標(biāo)簽: inode

inode 智能客戶端v7.0 最新版
  • 類型:行業(yè)軟件大。54.2M語言:中文 評分:1.8
  • 標(biāo)簽:
立即下載

debian系統(tǒng),只有一個分區(qū),web服務(wù)器,最近發(fā)現(xiàn)inode使用率真100%,刪了一些文件,但過一會又升到100%,如何解決?或者有什么方法查看到底是哪些文件在增加,占用inode?謝謝!
Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/dev/sda2            17793024 17791412    1612  100% /
udev                 1021529     553 1020976    1% /dev故障現(xiàn)象

分區(qū)無法寫入文件。

故障分析

執(zhí)行df -h命令發(fā)現(xiàn)空間占用不到70%,執(zhí)行df -hi,發(fā)現(xiàn)某分區(qū)IUse%值為100%,說明inode已經(jīng)用完,應(yīng)該是某些目錄下存在大量的小文件導(dǎo)致。

解決方法

大量小文件分布有兩種可能,一是只有一個或少量目錄下存在大量小文件,這種情況我們可以使用如下命令來找出這個異常目錄:

find / -type d -size +10M

此命令作用是找出大小大于10M的目錄(目錄大小越大,表示目錄下的文件越多)。
第二種可能是,大量的小文件分布在大量的目錄下,這時候上面的命令可能找不出異常的目錄,需要以下命令:

cd /

find */ ! -type l | cut -d / -f 1 | uniq -c

此命令作用是找出目錄下文件總數(shù),可能需要執(zhí)行多次,直到找出具體的目錄。比如上面的命令找出了/data目錄下存在大量的小文件,但/data/目錄還有很多目錄,這時候我們還需要繼續(xù)執(zhí)行:

cd /data

find */ ! -type l | cut -d / -f 1 | uniq -c

直到找出具體的目錄。

故障總結(jié)

對inode占用進行監(jiān)控,并且收到inode告警時應(yīng)及時使用以上方法來定位問題,并反饋給相應(yīng)人員從根源解決。

一、發(fā)現(xiàn)問題:
在一臺配置較低的Linux服務(wù)器(內(nèi)存、硬盤比較。┑/data分區(qū)內(nèi)創(chuàng)建文件時,系統(tǒng)提示磁盤空間不足,用df -h命令查看了一下磁盤使用情況,發(fā)現(xiàn)/data分區(qū)只使用了66%,還有12G的剩余空間,按理說不會出現(xiàn)這種問題。

二、分析問題:
后來用df -i查看了一下/data分區(qū)的索引節(jié)點(inode),發(fā)現(xiàn)已經(jīng)用滿(IUsed=100%),導(dǎo)致系統(tǒng)無法創(chuàng)建新目錄和文件。

inode譯成中文就是索引節(jié)點,每個存儲設(shè)備(例如硬盤)或存儲設(shè)備的分區(qū)被格式化為文件系統(tǒng)后,應(yīng)該有兩部份,一部份是inode,另一部份是Block,Block是用來存儲數(shù)據(jù)用的。而inode呢,就是用來存儲這些數(shù)據(jù)的信息,這些信息包括文件大小、屬主、歸屬的用戶組、讀寫權(quán)限等。inode為每個文件進行信息索引,所以就有了inode的數(shù)值。操作系統(tǒng)根據(jù)指令,能通過inode值最快的找到相對應(yīng)的文件。

而這臺服務(wù)器的Block雖然還有剩余,但inode已經(jīng)用滿,因此在創(chuàng)建新目錄或文件時,系統(tǒng)提示磁盤空間不足。

三、查找原因:
/data/cache目錄中存在數(shù)量非常多的小字節(jié)緩存文件,占用的Block不多,但是占用了大量的inode。

四、解決方案:
1、刪除/data/cache目錄中的部分文件,釋放出/data分區(qū)的一部分inode。

2、用軟連接將空閑分區(qū)/opt中的newcache目錄連接到/data/cache,使用/opt分區(qū)的inode來緩解/data分區(qū)inode不足的問題:
ln -s /opt/newcache /data/cache

3、更換服務(wù)器,用高配置的服務(wù)器替換低配置的服務(wù)器。很多時候用錢去解決問題比用技術(shù)更有效,堆在我辦公桌上5臺全新的 DELL PowerEdge 1950 服務(wù)器即將運往IDC機房。

有個tmp目錄,用ls命令,直接卡死,一下子就明白文件不少 ,然后敲進 rm -rf命令又卡住了,關(guān)機睡覺,今天早上來看,inode使用率降到50%了 ^_^

linux里每個文件都有些元信息像創(chuàng)建時間,文件大小,文件名啊之類的,這些元信息就存在inode了。這樣如果小文件過多的話,可能磁盤沒滿但inode空間已分配完,這時磁盤就跟滿了一樣無法寫入

    相關(guān)評論

    閱讀本文后您有什么感想? 已有人給出評價!

    • 8 喜歡喜歡
    • 3 頂
    • 1 難過難過
    • 5 囧
    • 3 圍觀圍觀
    • 2 無聊無聊

    熱門評論

    最新評論

    發(fā)表評論 查看所有評論(0)

    昵稱:
    表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
    字數(shù): 0/500 (您的評論需要經(jīng)過審核才能顯示)