Linux 中的 df 命令

df 命令 用於顯示整個 Linux 文件系統的磁盤空間使用情況。 它顯示已安裝文件系統上已使用和可用的磁盤空間量。

而 du 命令用於顯示文件系統上已使用的文件和目錄的磁盤空間。

本教程展示瞭如何使用 df 命令檢查磁盤空間使用情況 在 Linux 中。

使用 df 命令檢查磁盤空間

要檢查磁盤空間使用情況,請運行 df 來自終端的命令。 默認情況下 df 命令打印設備名稱、總塊數、已用磁盤空間、可用磁盤空間、已用空間百分比和文件系統掛載點。 df 命令還打印遠程安裝的文件系統,例如 nfs。

df 打印分區大小 1 KB 默認阻止。

$df

輸出:

Filesystem 1K-blocks Used Available Use% Mounted on
udev 457968 0 457968 0% /dev
tmpfs 100476 1000 99476 1% /run
/dev/sda 25230876 8117240 15812788 34% /
tmpfs 502364 0 502364 0% /dev/shm
tmpfs 5120 0 5120 0% /run/lock
tmpfs 502364 0 502364 0% /sys/fs/cgroup
/dev/loop0 72192 72192 0 100% /snap/lxd/19647
/dev/loop1 71680 71680 0 100% /snap/lxd/19188
/dev/loop2 56832 56832 0 100% /snap/core18/1988
/dev/loop3 56832 56832 0 100% /snap/core18/1997
/dev/loop5 33152 33152 0 100% /snap/snapd/11402
tmpfs 100472 0 100472 0% /run/user/0
/dev/loop6 33152 33152 0 100% /snap/snapd/11588

其中字段是:

  • 文件系統 – 文件系統路徑
  • 1K 塊 – 以 1 KB 塊為單位的分區大小
  • 使用 – 使用的塊(以 KB、MB、GB 為單位)
  • 可用 – 未使用的塊(以 KB、MB、GB 為單位)
  • Mounted on – 顯示文件系統掛載點路徑

顯示磁盤空間 特定磁盤或分區, 將設備名稱作為參數傳遞。 為了 example:

$ df /dev/sda
$ df /dev/sda{7,8}

輸出:

Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda 25230876 8146048 15783980 35% /

df 允許通過 掛載點作為參數 檢查磁盤空間。

為了 example, $ df -h /home

文件名 可以作為參數傳遞,以打印文件所在的文件系統。

$ df file.txt

輸出:

Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda8 5039616 2945900 1837716 62% /home

顯示所有可用的 領域, 跑:

$ df --o

輸出:

Filesystem Type Inodes IUsed IFree IUse% 1K-blocks Used Avail Use% File Mounted on
udev devtmpfs 114492 401 114091 1% 457968 0 457968 0% - /dev
tmpfs tmpfs 125591 631 124960 1% 100476 996 99480 1% - /run
/dev/sda ext4 1568000 195387 1372613 13% 25230876 8146276 15783752 35% - /
tmpfs tmpfs 125591 4 125587 1% 502364 0 502364 0% - /dev/shm
tmpfs tmpfs 125591 3 125588 1% 5120 0 5120 0% - /run/lock

以人類可讀的格式顯示磁盤使用情況

更易於理解的磁盤空間使用格式是 KB、MB、GB 或 TB。 根據文件系統的大小,系統會自動以人性化的格式顯示大小。

顯示磁盤空間 人類可讀的格式, 使用 -h 選項,如下:

$ df -h

輸出:

Filesystem Size Used Avail Use% Mounted on
udev 448M 0 448M 0% /dev
tmpfs 99M 996K 98M 1% /run
/dev/sda 25G 7.8G 16G 35% /
tmpfs 491M 0 491M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 491M 0 491M 0% /sys/fs/cgroup
/dev/loop0 71M 71M 0 100% /snap/lxd/19647
/dev/loop1 70M 70M 0 100% /snap/lxd/19188
/dev/loop2 56M 56M 0 100% /snap/core18/1988
/dev/loop3 56M 56M 0 100% /snap/core18/1997
/dev/loop5 33M 33M 0 100% /snap/snapd/11402
tmpfs 99M 0 99M 0% /run/user/0
/dev/loop6 33M 33M 0 100% /snap/snapd/11588

‘1K-b​​lock’ 列替換為 ‘Size’ 列。

注意: -H 或者 –-si 選項類似於 -h, 但 is 使用 1024 而不是 1000 的冪(與 -h 一樣)。

以特定格式顯示磁盤使用大小

您可以使用 -B 或者 --block-size=SIZE 提供自定義尺寸格式的選項。

SIZE 可以是(或可以是一個可選的整數)後面的 KB (1000) 或 K (1024) 之一。

顯示磁盤空間使用情況 (即 1024):

$ df -k
$ df -BK

顯示磁盤空間使用情況 知識庫 (即 1000):

$ df -BKB

同上,df可以以MB(1000*1000)和M(1024*1024)顯示空間利用率。

顯示磁盤空間使用情況 (即 1024*1024):

$ df -m
$ df -BM

顯示磁盤空間使用情況 主板 (即 1000*1000):

$ df -BMB

不幸的是,我們沒有 -g 選項顯示在 G, 而是使用 -BG. 而對於 國標 使用選項 -BGB.

$ df -BG
$ df -BGB

顯示所有文件系統

顯示所有文件系統 包括虛擬文件系統在內的磁盤空間使用情況,請使用 -a 選項。

$ df -a

輸出:

Filesystem 1K-blocks Used Available Use% Mounted on
sysfs 0 0 0 - /sys
proc 0 0 0 - /proc
udev 457968 0 457968 0% /dev
devpts 0 0 0 - /dev/pts
tmpfs 100476 996 99480 1% /run
/dev/sda 25230876 8146320 15783708 35% /
securityfs 0 0 0 - /sys/kernel/security
tmpfs 502364 0 502364 0% /dev/shm
tmpfs 5120 0 5120 0% /run/lock
tmpfs 502364 0 502364 0% /sys/fs/cgroup
cgroup2 0 0 0 - /sys/fs/cgroup/unified
cgroup 0 0 0 - /sys/fs/cgroup/systemd
pstore 0 0 0 - /sys/fs/pstore
none 0 0 0 - /sys/fs/bpf
cgroup 0 0 0 - /sys/fs/cgroup/rdma

顯示 inode 信息

要顯示 inode 信息,請使用 -i 選項。

$ df -i

輸出:

Filesystem Inodes IUsed IFree IUse% Mounted on
udev 114492 401 114091 1% /dev
tmpfs 125591 631 124960 1% /run
/dev/sda 1568000 195387 1372613 13% /
tmpfs 125591 4 125587 1% /dev/shm
tmpfs 125591 3 125588 1% /run/lock
tmpfs 125591 18 125573 1% /sys/fs/cgroup

顯示文件系統類型

包含文件系統 輸入 df 輸出,使用 -T 選項。

$ df -T

輸出:

Filesystem Type 1K-blocks Used Available Use% Mounted on
udev devtmpfs 457968 0 457968 0% /dev
tmpfs tmpfs 100476 996 99480 1% /run
/dev/sda ext4 25230876 8166852 15763176 35% /
tmpfs tmpfs 502364 0 502364 0% /dev/shm
tmpfs tmpfs 5120 0 5120 0% /run/lock
tmpfs tmpfs 502364 0 502364 0% /sys/fs/cgroup
/dev/loop0 squashfs 72192 72192 0 100% /snap/lxd/19647
/dev/loop1 squashfs 71680 71680 0 100% /snap/lxd/19188

打印設備名稱 特定文件系統 輸入,運行:

$ df -t ext4

輸出:

文件系統 1K-blocks Used 可用使用% Mounted on /dev/sda 81000696 13120476 63747468 18% / /dev/sdc 15350768 10829540 3718412 75% /mnt/wbmirror

打印 排除 特定的文件系統類型,使用 -x 選項:

$ df -x ext4

顯示總磁盤使用量

要顯示 全部的 磁盤使用情況 在輸出的最後一行t,使用選項–total。

$ df --total

為了 example 我想以人類可讀的格式顯示總磁盤使用量,輸入:

$ df --total -h

輸出:

Filesystem Size Used Avail Use% Mounted on
udev 448M 0 448M 0% /dev
tmpfs 99M 1000K 98M 1% /run
/dev/sda 25G 7.8G 16G 35% /
tmpfs 491M 0 491M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 491M 0 491M 0% /sys/fs/cgroup
/dev/loop0 71M 71M 0 100% /snap/lxd/19647
/dev/loop1 70M 70M 0 100% /snap/lxd/19188
/dev/loop2 56M 56M 0 100% /snap/core18/1988
/dev/loop3 56M 56M 0 100% /snap/core18/1997
/dev/loop5 33M 33M 0 100% /snap/snapd/11402
tmpfs 99M 0 99M 0% /run/user/0
/dev/loop6 33M 33M 0 100% /snap/snapd/11588
total 26G 8.1G 17G 33% -

顯示本地文件系統

默認情況下,df 命令顯示本地和遠程安裝的文件系統。 要限制僅列出本地文件系統,請使用該選項 -l.

$ df -l

結論

在本教程中,我們了解了 df 命令以及如何使用它來檢查 Linux 中的磁盤空間使用情況。 如果您在評論部分發現任何有趣的內容,請告訴我們。