1. 程式人生 > 其它 >【Linux】磁碟空間清理

【Linux】磁碟空間清理

檢視磁碟剩餘情況

df(disk free) 命令用於顯示目前在 Linux 系統上的檔案系統磁碟使用情況統計。

  • -a :列出所有的檔案系統,包括系統特有的 /proc 等檔案系統;
  • -k :以 KBytes 的容量顯示各檔案系統;
  • -m :以 MBytes 的容量顯示各檔案系統;
  • -h :以人們較易閱讀的 GBytes, MBytes, KBytes 等格式自行顯示;
  • -H :以 M=1000K 取代 M=1024K 的進位方式;
  • -T :顯示檔案系統型別, 連同該 partition 的 filesystem 名稱 (例如 ext3) 也列出;
  • -i :不用硬碟容量,而以 inode 的數量來顯示

df -h以確定是否真的剩餘空間不足。

檢視磁碟使用情況

du (disk usage)命令用於顯示指定的目錄或檔案所佔用的磁碟空間。

  • -s:對每個Names引數只給出佔用的資料塊總數。
  • -a:遞迴地顯示指定目錄中各檔案及子目錄中各檔案佔用的資料塊數。若既不指定-s,也不指定-a,則只顯示Names中的每一個目錄及其中的各子目錄所佔的磁碟塊數。
  • -b:以位元組為單位列出磁碟空間使用情況(系統預設以k位元組為單位)。
  • -k:以1024位元組為單位列出磁碟空間使用情況。
  • -c:最後再加上一個總計(系統預設設定)。
  • -l:計算所有的檔案大小,對硬連結檔案,則計算多次。
  • -x:跳過在不同檔案系統上的目錄不予統計。
  • -h:以K,M,G為單位,提高資訊的可讀性。
  • --exclude=<目錄或檔案>:略過指定的目錄或檔案。
  • --max-depth=<目錄層數>:超過指定層數的目錄後,予以忽略。

當前目錄下磁碟使用情況

進入df -h掛載的目錄下,然後執行下面的命令查詢佔用大的資料夾:

du -h --max-depth=1

按檔案大小降序

進入資料夾後,使用下面的命令查詢最大的10個檔案:

ll -Sh | head

遞迴所有目錄

也可以遞迴所有目錄:

du -ah

選出最大的10個檔案

du -s * | sort -nr | head -10

檔案大小沒有顯示單位,可以使用 find 命令查詢對應檔案。

檢視是否已刪除的檔案未釋放磁碟空間

如果使用du -h --max-depth=1命令發現佔用遠小於df -h顯示的大小,可以使用下面命令檢視是否有未釋放的磁碟空間(單位:Byte):

lsof | grep deleted