Linux
刪除文件後保留的空間
我刪除了一個大約 200GB 的大文件,但似乎仍然因為某種原因保留了空間。我嘗試用我找到的一堆命令來清除它,但對我沒有任何幫助(因為文件仍然被某些應用程序打開,所以它們被保存在記憶體中)。我也重新啟動了很多次,但沒有任何效果。
父文件夾仍然具有原始大小,但似乎子文件夾的大小都合適。
我希望有人知道為什麼它仍然保留或我如何擺脫它。
- 如果您沒有重新啟動:您可能應該使用:
lsof -a +L1
可以幫助您找出哪些已刪除(rm’d)文件仍然打開了“文件句柄”(即,某些程序仍然指向它,因此文件本身還沒有被刪除從文件系統中刪除,即使它的姓氏條目已被 rm 刪除)。偏移量將暗示其中最大的文件。如果您看到一個似乎符合要求的應用程序:您應該干淨地殺死(不是殺死 -9 pid,嘗試只是殺死 pid)相應的應用程序,它應該釋放該文件句柄,並且應該回收該文件。- 但是您聲明您已重新啟動:您的主目錄下的某處可能有隱藏文件。你可以試試:
find /home/vincent/ -size +1G -ls
查看/home/vincent目錄下大於1G的文件- 請注意:您使用 a
*
of du 的呼叫,即du ... *
只會對不以 a 開頭的文件執行 du.
(*
將由您的 shell 擴展到所有不以 a 開頭的文件和目錄.
)。所以它不會在 /home/vincent 的“隱藏文件”上執行)。我在上面給出的 printf 應該忽略這一點(除非您對它們有特定的附加權限限制)並探索顯示和隱藏的目錄和文件。您還可以以 root 身份重新執行查找,方法是在它前面加上 sudo,並查看以 root 身份啟動時是否顯示更多內容:sudo find /home/vincent/ -size +1G -ls
- 最後,如果您使用最近的圖形界面刪除:您可能需要清空“垃圾箱”才能真正釋放空間。(並且那個垃圾桶可以作為“.something”目錄存在於您的主目錄下,解釋為什麼您的主目錄仍然那麼大,以及為什麼您
du ... *
沒有看到它)