隨着電腦使用時間的增長,我們經常會發現自己的電腦變得越來越慢,這是因為我們在電腦上存放了大量的臨時文件,其中一個文件就是temp文件夾,那麼temp文件夾突然爆滿怎麼解決?下面就讓本站來為用戶們來仔細的介紹一下tmp文件夾佔用100%問題解析吧。
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/999
3、批量解除文件佔用,可通過編寫shell腳本解決,舉例:刪除pid為3860289中fd為500到1000的文件佔用。
#!/bin/bash for i in {500..1000} do /proc/3860289/fd/$i done
4、以上為臨時刪除文件佔用,最後可通過重啟應用解決問題 kill -9 {PID}
kill -9 3860289
以上就是tmp文件夾磁盤佔用100%問題解析的全部內容,希望大家喜歡,請繼續關注。
原創文章,作者:簡單一點,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/172091.html