php小編蘋果為您解析"temp資料夾突然爆滿怎麼解決?tmp資料夾佔用100%問題解析"。當temp資料夾突然爆滿,tmp資料夾佔用100%時,可能是因為系統或應用程式臨時檔案過多而導致的。解決方法包括手動清理暫存檔案、檢查是否有程式錯誤導致檔案無法刪除、修改暫存檔案儲存路徑、設定自動清理策略等。採取適當的措施,您可以有效解決temp資料夾佔用過多磁碟空間的問題,確保系統正常運作。
tmp資料夾佔用100%問題解析
1、透過df -h 查看磁碟佔用,發現/dev/vdb1 (檔案存放路徑)佔用42%,空間充足;但是/tmp資料夾佔用率100%。
df -h
這裡已經釋放了部分空間所以/tmp佔用為91%。
2、進入/tmp路徑查看佔用情況,發現檔案佔用才5.7M,實際總空間有16G。
cd /tmp
3、由於tmp為臨時資料夾,檔案使用結束後自動刪除,猜測存在檔案被刪除但是空間未釋放的情況。透過 lsof /tmp 查看檔案狀況,發現有大量的檔案被刪除但是依舊被進程佔用,導致無法釋放空間。
lsof /tmp
4、透過上述截圖查看佔用檔案的進程PID為3860289,此進行未部署的springboot專案。正常情況下重啟項目即可釋放,但是目前為線上項目,重啟會影響用戶使用。所以需要不透過重啟釋放空間。
解決問題
1、查詢檔案佔用進程的檔案fd資訊ls -i /proc/{流程PID}/fd 舉例如下:
##ls -i /proc /3860289/df 2、透過>/proc/{流程pid}/fd/{檔案fd} 解除空間佔用(檔案fd為上圖紅色部分第一個數字),舉例如下:>/proc/3860289/fd/9993、批次解除檔案佔用,可透過編寫shell腳本解決,舉例:刪除pid為3860289中fd為500到1000的文件佔用。 #! /bin/bashfor i in {500..1000}do/proc/3860289/fd/$i#done4、以上為暫時刪除檔案佔用,最後可透過重新啟動應用解決問題kill -9 {PID}kill -9 3860289以上是temp資料夾突然爆滿怎麼解決? tmp資料夾佔用100%問題解析的詳細內容。更多資訊請關注PHP中文網其他相關文章!