Ubuntu df/du命令:查看磁盤空間使用情況

在Linux系統中,磁盤空間管理是日常運維的重要環節。無論是排查系統故障、清理冗餘文件,還是規劃存儲空間,都需要先了解磁盤的使用情況。Ubuntu系統提供了兩個常用工具:dfdu,它們能幫助我們分別從整體分區具體目錄/文件的角度查看磁盤空間佔用。

df命令:查看磁盤分區整體使用情況

df(Disk Free的縮寫)用於顯示整個磁盤分區的空間使用情況,包括總容量、已用空間、可用空間及使用率。

基本用法與參數

直接輸入 df 會顯示所有掛載分區的信息,但默認單位是字節(不直觀),建議結合 -h 參數(人類可讀格式,自動轉換爲KB/MB/GB):

df -h

常用參數:
- -h:以人類可讀單位顯示(如 1K1K1.2G1.2G
- -T:顯示文件系統類型(如 ext4xfs 等)
- -i:顯示inode使用情況(inode是文件系統中記錄文件元數據的“索引節點”,inode滿了也會導致無法創建新文件)

輸出結果解釋

執行 df -h 後,輸出示例如下:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2       20G   15G  4.8G  76% /
tmpfs           2.0G     0  2.0G   0% /dev/shm
/dev/sdb1       50G   10G  40G  20% /home
  • Filesystem:掛載的磁盤設備或文件系統(如 /dev/sda2 是第一個磁盤的第二個分區)。
  • Size:分區總容量。
  • Used:已用空間。
  • Avail:可用空間。
  • Use%:磁盤使用率(超過85%建議清理)。
  • Mounted on:掛載點(即該分區掛載到系統的哪個目錄下,如 / 是根目錄,/home 是用戶目錄)。

關鍵說明

  • 掛載點:Linux系統通過“掛載”將磁盤分區與目錄樹關聯。例如,/home 目錄掛載在 /dev/sdb1 分區,所有用戶文件默認存放在 /home/用戶名 下。
  • 特殊分區tmpfs 是內存虛擬文件系統,無實際磁盤空間,可忽略其使用率。

du命令:查看具體目錄/文件的空間佔用

du(Disk Usage的縮寫)用於顯示指定目錄或文件的詳細磁盤佔用情況,與 df 的區別是:df 關注分區整體,du 關注具體內容。

基本用法與參數

du 的基礎語法爲 du [選項] [目錄/文件],常用參數:
- -h:人類可讀單位(同 df -h)。
- -s:僅顯示總和(不展開子目錄)。
- -a:顯示所有文件和目錄(包括隱藏文件,默認不顯示)。
- -c:在最後一行顯示所有統計的總和。
- -sh:組合 -s(僅總和)和 -h(人類可讀),適合快速查看目錄總大小。

常用示例

  1. 查看單個目錄總大小
    如查看 /home 目錄的總佔用:
   du -sh /home

輸出類似:2.5G /home(表示 /home 目錄共佔用2.5GB空間)。

  1. 查看目錄下所有子目錄大小
    如當前目錄下各子目錄的大小(不顯示文件細節):
   du -h --max-depth=1

--max-depth=1 僅顯示一級子目錄(不加則遞歸所有層級)。

  1. 顯示目錄下所有文件大小
    如查看 /tmp 目錄下所有文件(含隱藏文件)的大小,並按降序排序:
   du -ah /tmp | sort -hr | head -n 10
  • -a:顯示所有文件(包括隱藏文件)。
  • sort -hr:按大小降序排序(-h 是人類可讀排序)。
  • head -n 10:取前10個最大文件。
  1. 查看文件具體大小
    如查看 bigfile.txt 的大小:
   du -h bigfile.txt

df vs du:區別與使用場景

工具 作用範圍 特點 典型場景
df 磁盤分區整體 顯示分區總容量、已用/可用空間,單位統一爲分區容量 檢查系統磁盤是否整體不足(如根分區 / 使用率超過85%)
du 目錄/文件細節 顯示指定目錄或文件的具體佔用,可深入子目錄 定位大文件/目錄(如清理緩存、日誌文件)

總結:磁盤空間管理步驟

  1. 檢查整體分區:先用 df -h 查看所有分區使用率,定位空間不足的分區(如 //home)。
  2. 定位大目錄:用 du -sh /path/to/dir 查看目標分區下的大目錄,再用 du -h --max-depth=1 /path/to/dir 逐層排查子目錄。
  3. 清理冗餘文件:對大目錄(如 Downloadsapt 緩存),可刪除無用文件或歸檔備份。

通過 dfdu 的組合使用,能高效管理磁盤空間,避免因空間不足導致系統異常。

小夜