Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> 關於 Linux

df 與 du 指令實戰:快速查看 Linux 磁碟空間與目錄大小

編輯:關於 Linux

磁碟空間不足是伺服器常見隱患。本文實戰演示 df (檔案系統層級) 與 du (目錄/檔案層級) 兩大核心指令的常用參數組合,教你從「分區剩餘多少」精準鑽取到「哪個子目錄佔用最大」,並提供排序、深度限制、單一目錄統計等高頻技巧。

df -h 輸出範例

一、df — 檔案系統磁碟使用量

最常用參數

df -h          # 人類可讀單位 (K/M/G)
df -hT         # 額外顯示檔案系統類型 (ext4, xfs, nfs...)
df -i          # 查看 inode 使用量 (大量小檔案場景關鍵)

輸出欄位說明

  • Filesystem:裝置/掛載點
  • Size/Used/Avail:總量/已用/可用
  • Use%:使用率
  • Mounted on:掛載目錄

二、du — 目錄/檔案磁碟佔用統計

核心參數組合

指令用途說明
du -sh 目錄顯示目錄總大小-s 汇總、-h 人類可讀
du -h --max-depth=1 目錄顯示第一層子目錄大小不遞歸孫子目錄,快速定位大戶
du -h --max-depth=0 目錄等同 du -sh--max-depth=0 即只統計該目錄本身
du -sh /path/to/dir指定絕對路徑統計不受當前工作目錄影響
du -sk * | sort -rn按 KB 排序顯示所有子項適合腳本處理,數值穩定

實戰範例:找出 /home 下佔空間最大的用戶目錄

du -h --max-depth=1 /home | sort -hr
# 或
du -sk /home/* | sort -rn | head -10

三、df vs du 差異與常見誤區

比較項dfdu
統計層級檔案系統/分區目錄/檔案
更新即時性即時 (核心層面)掃描目錄樹,大目錄較慢
已刪除但被進程持有的檔案計入已用空間不計入 (目錄項已消失)
適用場景整體容量規劃、監控告警定位大目錄、清理規劃

經典現象:df 顯示分區滿,但 du 統計總和遠小於已用空間 → 通常是大檔案被刪除但進程仍持有開啟 (如日誌檔)。解決:lsof | grep deleted 找到進程並重啟或 truncate 釋放。

四、進階技巧

  • 排除特定檔案系統:df -h -x tmpfs -x devtmpfs
  • 只統計檔案不含目錄:find /path -type f -exec du -ch {} + | grep total
  • 圖形化工具:ncdu (互動式)、baobab (GNOME 磁碟使用分析器)

善用 df 做全局巡檢,du 做精準定位,配合 sort、head、ncdu,磁碟空間管理將輕鬆可控。

Copyright © Windows教程網 All Rights Reserved