我的新書AI 職場超神助手:ChatGPT 與生成式 AI 一鍵搞定工作難題的教材投影片已製作完成
歡迎各位有需要的教師和博碩文化索取教材

Linux刪除檔案後空間未釋放

查詢硬碟使用狀況

[root@localhost ~]# df

使用df可以查看硬碟的使用狀況

查詢刪除卻正在被使用的檔案

lsof(lsof的全稱是list open files),此工具可以用來查看正在運行中的進程打開了哪些文件、目錄和套接字;是系統監測工具之一。
請參見: 好用的網管指令-lsof

查找打開,但是不能連接的文件
一個進程打開一個文件, 然後將其設為 unlinked 狀態, 則此文件資源仍能被進程使用, 但是其訪問路徑已經被刪除了.
因此, 使用ls不能將其列出. 只有當進程結束時, 才能釋放文件佔用的資源

查找unlinked 文件, 選項 +L, 作用: 列出打開文件的連接數

[root@localhost ~]# lsof +L


指定連接數的上限

[root@localhost ~]# lsof +L1

問題發生原因

該被deleted的檔案雖然被刪除了,卻因為正在被某個程序使用著,因此該著被刪除的檔案沒有辦法釋放所使用的空間。

解決方法

  • 最簡單的方法是關閉或者重啟httpd程序,當然也可以重啟作業系統
  • 線上清空這個檔案,可以通過如下命令完成:
    [root@localhost ~]# echo " " >/tmp/acess.log

參考資料


17年資歷女工程師,專精於動畫、影像辨識以及即時串流程式開發。經常組織活動,邀請優秀的女性分享她們的技術專長,並在眾多場合分享自己的技術知識,也活躍於非營利組織,辦理活動來支持特殊兒及其家庭。期待用技術改變世界。

如果你認同我或想支持我的努力,歡迎請我喝一杯咖啡!讓我更有動力分享知識!