df 即“可用磁盤”disk free,用於顯示文件系統的磁盤使用情況。默認情況下 df 命令將以每塊 1K 的單位進行顯示所有當前已掛載的文件系統,如果你想以人類易讀的格式顯示 df 命令的輸出,像這樣“df -h”使用 -h 選項。
在這篇文章中,我們將討論 df 命令在 Linux 下11種不同的實例。
在 Linux 下 df 命令的基本格式為:
復制代碼代碼如下:
# df {options} {mount_point_of_filesystem}
在 df 命令中可用的選項有:
df 的樣例輸出 :
復制代碼代碼如下:
[root@linux-world ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/vg00-root 17003304 804668 15311852 5% /
devtmpfs 771876 0 771876 0% /dev
tmpfs 777928 0 777928 0% /dev/shm
tmpfs 777928 8532 769396 2% /run
tmpfs 777928 0 777928 0% /sys/fs/cgroup
/dev/mapper/vg00-home 14987616 41000 14162232 1% /home
/dev/sda1 487652 62593 395363 14% /boot
/dev/mapper/vg00-var 9948012 48692 9370936 1% /var
/dev/mapper/vg00-sap 14987656 37636 14165636 1% /sap
[root@linux-world ~]#
例1:使用 -a 選項列出所有文件系統的磁盤使用量
當我們在 df 命令中使用 -a 選項時,它會顯示所有文件系統的磁盤使用情況。
復制代碼代碼如下:
[root@linux-world ~]# df -a
Filesystem 1K-blocks Used Available Use% Mounted on
rootfs 17003304 804668 15311852 5% /
proc 0 0 0 - /proc
sysfs 0 0 0 - /sys
devtmpfs 771876 0 771876 0% /dev
securityfs 0 0 0 - /sys/kernel/security
tmpfs 777928 0 777928 0% /dev/shm
devpts 0 0 0 - /dev/pts
tmpfs 777928 8532 769396 2% /run
tmpfs 777928 0 777928 0% /sys/fs/cgroup
cgroup 0 0 0 - /sys/fs/cgroup/systemd
pstore 0 0 0 - /sys/fs/pstore
cgroup 0 0 0 - /sys/fs/cgroup/cpuset
cgroup 0 0 0 - /sys/fs/cgroup/cpu,cpuacct
cgroup 0 0 0 - /sys/fs/cgroup/memory
cgroup 0 0 0 - /sys/fs/cgroup/devices
cgroup 0 0 0 - /sys/fs/cgroup/freezer
cgroup 0 0 0 - /sys/fs/cgroup/net_cls
cgroup 0 0 0 - /sys/fs/cgroup/blkio
cgroup 0 0 0 - /sys/fs/cgroup/perf_event
cgroup 0 0 0 - /sys/fs/cgroup/hugetlb
configfs 0 0 0 - /sys/kernel/config
/dev/mapper/vg00-root 17003304 804668 15311852 5% /
selinuxfs 0 0 0 - /sys/fs/selinux
systemd-1 0 0 0 - /proc/sys/fs/binfmt_misc
debugfs 0 0 0 - /sys/kernel/debug
hugetlbfs 0 0 0 - /dev/hugepages
mqueue 0 0 0 - /dev/mqueue
/dev/mapper/vg00-home 14987616 41000 14162232 1% /home
/dev/sda1 487652 62593 395363 14% /boot
/dev/mapper/vg00-var 9948012 48692 9370936 1% /var
/dev/mapper/vg00-sap 14987656 37636 14165636 1% /sap
[root@linux-world ~]#
例2:以人類易讀的格式顯示 df 命令的輸出
在 df 命令中使用-h選項,以人類易讀的格式輸出(例如,5K,500M 及 5G)
復制代碼代碼如下:
[root@linux-world ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg00-root 17G 786M 15G 5% /
devtmpfs 754M 0 754M 0% /dev
tmpfs 760M 0 760M 0% /dev/shm
tmpfs 760M 8.4M 752M 2% /run
tmpfs 760M 0 760M 0% /sys/fs/cgroup
/dev/mapper/vg00-home 15G 41M 14G 1% /home
/dev/sda1 477M 62M 387M 14% /boot
/dev/mapper/vg00-var 9.5G 48M 9.0G 1% /var
/dev/mapper/vg00-sap 15G 37M 14G 1% /sap
[root@linux-world ~]#
例3:顯示特定文件系統已使用的空間
假如我們想顯示 /sap 文件系統空間的使用情況。
復制代碼代碼如下:
[root@linux-world ~]# df -h /sap/
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg00-sap 15G 37M 14G 1% /sap
[root@linux-world ~]#
例4:輸出所有已掛載文件系統的類型
-T 選項用在 df 命令中用來顯示文件系統的類型。
復制代碼代碼如下:
[root@linux-world ~]# df -T
Filesystem Type 1K-blocks Used Available Use% Mounted on
/dev/mapper/vg00-root ext4 17003304 804668 15311852 5% /
devtmpfs devtmpfs 771876 0 771876 0% /dev
tmpfs tmpfs 777928 0 777928 0% /dev/shm
tmpfs tmpfs 777928 8532 769396 2% /run
tmpfs tmpfs 777928 0 777928 0% /sys/fs/cgroup
/dev/mapper/vg00-home ext4 14987616 41000 14162232 1% /home
/dev/sda1 ext3 487652 62593 395363 14% /boot
/dev/mapper/vg00-var ext3 9948012 48696 9370932 1% /var
/dev/mapper/vg00-sap ext3 14987656 37636 14165636 1% /sap
[root@linux-world ~]#
例5:按塊大小輸出文件系統磁盤使用情況
復制代碼代碼如下:
[root@linux-world ~]# df -k
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/vg00-root 17003304 804668 15311852 5% /
devtmpfs 771876 0 771876 0% /dev
tmpfs 777928 0 777928 0% /dev/shm
tmpfs 777928 8532 769396 2% /run
tmpfs 777928 0 777928 0% /sys/fs/cgroup
/dev/mapper/vg00-home 14987616 41000 14162232 1% /home
/dev/sda1 487652 62593 395363 14% /boot
/dev/mapper/vg00-var 9948012 48696 9370932 1% /var
/dev/mapper/vg00-sap 14987656 37636 14165636 1% /sap
[root@linux-world ~]#
例6:輸出文件系統的 inode 信息
-i 選項用在 df 命令用於顯示文件系統的 inode 信息。
所有文件系統的 inode 信息:
復制代碼代碼如下:
[root@linux-world ~]# df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/vg00-root 1089536 22031 1067505 3% /
devtmpfs 192969 357 192612 1% /dev
tmpfs 194482 1 194481 1% /dev/shm
tmpfs 194482 420 194062 1% /run
tmpfs 194482 13 194469 1% /sys/fs/cgroup
/dev/mapper/vg00-home 960992 15 960977 1% /home
/dev/sda1 128016 337 127679 1% /boot
/dev/mapper/vg00-var 640848 1235 639613 1% /var
/dev/mapper/vg00-sap 960992 11 960981 1% /sap
[root@linux-world ~]#
特定文件系統的 inode 信息:
復制代碼代碼如下:
[root@linux-world ~]# df -i /sap/
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/vg00-sap 960992 11 960981 1% /sap
[root@linux-world ~]#
例7:輸出所有文件系統使用情況匯總
-total 選項在 df 命令中用於顯示所有文件系統的磁盤使用情況匯總。
復制代碼代碼如下:
[root@linux-world ~]# df -h --total
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg00-root 17G 786M 15G 5% /
devtmpfs 754M 0 754M 0% /dev
tmpfs 760M 0 760M 0% /dev/shm
tmpfs 760M 8.4M 752M 2% /run
tmpfs 760M 0 760M 0% /sys/fs/cgroup
/dev/mapper/vg00-home 15G 41M 14G 1% /home
/dev/sda1 477M 62M 387M 14% /boot
/dev/mapper/vg00-var 9.5G 48M 9.0G 1% /var
/dev/mapper/vg00-sap 15G 37M 14G 1% /sap
total 58G 980M 54G 2% -
[root@linux-world ~]#
例8:只打印本地文件系統磁盤的使用情況
假設網絡文件系統也掛載在 Linux 上,但我們只想顯示本地文件系統的信息,這可以通過使用 df 命令的 -l 選項來實現。
只打印本地文件系統:
復制代碼代碼如下:
[root@linux-world ~]# df -Thl
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/vg00-root ext4 17G 791M 15G 6% /
devtmpfs devtmpfs 754M 0 754M 0% /dev
tmpfs tmpfs 760M 0 760M 0% /dev/shm
tmpfs tmpfs 760M 8.4M 752M 2% /run
tmpfs tmpfs 760M 0 760M 0% /sys/fs/cgroup
/dev/mapper/vg00-home ext4 15G 41M 14G 1% /home
/dev/sda1 ext3 477M 62M 387M 14% /boot
/dev/mapper/vg00-var ext3 9.5G 105M 8.9G 2% /var
/dev/mapper/vg00-sap ext3 15G 37M 14G 1% /sap
[root@linux-world ~]#
例9:打印特定文件系統類型的磁盤使用情況
-t 選項在 df 命令中用來打印特定文件系統類型的信息,用 -t 指定文件系統的類型,如下所示:
對於 ext4 :
復制代碼代碼如下:
[root@linux-world ~]# df -t ext4
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/vg00-root 17003304 809492 15307028 6% /
/dev/mapper/vg00-home 14987616 41000 14162232 1% /home
[root@linux-world ~]#
對於 nfs4 :
復制代碼代碼如下:
[root@linux-world ~]# df -t nfs4
Filesystem 1K-blocks Used Available Use% Mounted on
192.168.1.5:/opensuse 301545472 266833920 19371008 94% /data
[root@linux-world ~]#
例10:使用 -x 選項排除特定的文件系統類型
-x 或 –exclude-type 在 df 命令中用來在輸出中排出某些文件系統類型。
假設我們想打印除 ext3 外所有的文件系統。
復制代碼代碼如下:
[root@linux-world ~]# df -x ext3
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/vg00-root 17003304 809492 15307028 6% /
devtmpfs 771876 0 771876 0% /dev
tmpfs 777928 0 777928 0% /dev/shm
tmpfs 777928 8540 769388 2% /run
tmpfs 777928 0 777928 0% /sys/fs/cgroup
/dev/mapper/vg00-home 14987616 41000 14162232 1% /home
192.168.1.5:/opensuse 301545472 266834944 19369984 94% /data
[root@linux-world ~]#
例11:在 df 命令的輸出中只打印特定的字段
-output={field_name1,field_name2...} 選項用於顯示 df 命令某些字段的輸出。
可用的字段名有: source, fstype, itotal, iused, iavail, ipcent, size, used, avail, pcent 和 target
復制代碼代碼如下:
[root@linux-world ~]# df --output=fstype,size,iused
Type 1K-blocks IUsed
ext4 17003304 22275
devtmpfs 771876 357
tmpfs 777928 1
tmpfs 777928 423
tmpfs 777928 13
ext4 14987616 15
ext3 487652 337
ext3 9948012 1373
ext3 14987656 11
nfs4 301545472 451099
[root@linux-world ~]#