linux inode 已滿解決方法

2021-09-20 20:14:55 字數 1797 閱讀 6989

今天login server的乙個**,發現login後沒有生成session。根據以往經驗,一般是空間已滿導致session檔案生成失敗

空間剩餘473m,可以排除空間已滿的情況。導致檔案生成失敗還有另乙個原因,就是檔案索引節點

inode已滿

df -i  

filesystem                    inodes   iused  ifree iuse% mounted on  

udev                          503779     440 503339    1% /dev  

tmpfs                         506183     353 505830    1% /run  

none                          506183       5 506178    1% /run/lock  

none                          506183       2 506181    1% /run/shm  

/dev/sda1                     124496     255 124241    1% /boot  

inodes 占用100%,果然是這個問題

解決方法:刪除無用的臨時檔案,釋放inode。

查詢發現 /tmp 目錄下有很多sess_***xx的 session臨時檔案

ls -lt /tmp | wc -l  

4011517

進入/tmp目錄,執行find -exec命令

find   /home  -type  f  -exec  rm {} \;

如果使用rm *,有可能因為檔案數量太多而出現argument list too long錯誤,

原因是在linux下,試圖傳太多引數給乙個系統命令

(ls *; cp *; rm *; cat *; etc..)

時,就會出現 argument list too long錯誤。

除了/tmp的臨時檔案外,0位元組的檔案也會占用inode,應該也釋放。

遍歷尋找0位元組的檔案,並刪除

find /home -type f -size 0 -exec rm {} \;

刪除後,inode 的使用量減少為19%,可以正常使用了

df -i  

filesystem                    inodes  iused   ifree iuse% mounted on  

udev                          503779    440  503339    1% /dev  

tmpfs                         506183    353  505830    1% /run  

none                          506183      5  506178    1% /run/lock  

none                          506183      2  506181    1% /run/shm  

/dev/sda1                     124496    255  124241    1% /boot  

Linux inode 占用100 的解決辦法

當你的 linux 系統無法建立新檔案時,有可能是你的磁碟滿了,還有可能是你的磁碟的 inode 用光了,我們今天要說的就是後一種情況,要解決這個問題,只能是刪除一些檔案,但是一般情況下,其實是你的系統中的某個地方產生了大量的你並不需要的檔案,你要做的就是找到他們並刪除就可以了,我並不是讓你刪除你有...

如何解決「歸檔日誌已滿問題」

問題描述 所用資料庫為 oracle 10g 模式為歸檔模式,oracle 系統預設的歸檔空間為2g,由於日誌過多,空間寫滿,資料庫的redo檔案不能歸檔,而出現oracle資料庫掛起的問題。oem開啟oracle 10g 資料庫操作介面,會顯示如下錯誤資訊 由於輸出裝置已滿或不可用,歸檔程式無法歸...

如何解決「歸檔日誌已滿問題」

問題描述 所用資料庫為 oracle 10g 模式為歸檔模式,oracle 系統預設的歸檔空間為2g,由於日誌過多,空間寫滿,資料庫的redo檔案不能歸檔,而出現oracle資料庫掛起的問題。oem開啟oracle 10g 資料庫操作介面,會顯示如下錯誤資訊 由於輸出裝置已滿或不可用,歸檔程式無法歸...