LinuxMastery
•
•
By asdlkfj
LinuxMastery 14: 磁碟空間管理 df, du
硬碟空間去哪了?
伺服器運作久了,硬碟空間一定會減少。身為管理員,你需要隨時監控磁碟使用量,並在空間不足時快速找出佔用空間的元兇。
核心指令詳解
df (disk free)
- 用途:查看檔案系統的整體使用量 (掛載點層級)。
- 常用參數:
-h(human-readable),以 GB, MB 顯示。 - 範例:
輸出會顯示df -h/,/boot,/var等分割區的 Used 和 Avail 空間。如果 Use% 接近 100%,就要警覺了。
du (disk usage)
- 用途:查看個別目錄或檔案佔用的空間。
- 常用參數:
-s(summary):只顯示總計,不列出子目錄細節。-h:人類可讀格式。
- 範例:
# 檢查當前目錄下每個資料夾的大小 du -sh *
實戰心法
當 df -h 顯示根目錄滿了,排查步驟如下:
cd /- 執行
du -sh *,找出哪個第一層目錄最大 (通常是/var或/usr)。 - 進入該目錄 (例如
cd /var),再次執行du -sh *。 - 重複此步驟,直到找到元兇 (通常是
/var/log下的巨大 Log 檔,或是/var/lib/mysql下的資料庫檔)。
注意:如果刪除了大檔案但 df 顯示空間沒釋放,通常是因為該檔案正被某個進程開啟中。重啟該服務 (如 systemctl restart nginx) 即可釋放空間。