命令概述

df命令的英文全称即“Disk Free”,用于显示系统上可使用的磁盘空间。默认显示单位为KB,建议使用“df -h”的参数组合,根据磁盘容量自动变换合适的单位,更利于阅读,日常普遍用该命令可以查看磁盘被占用了多少空间、还剩多少空间等信息。

命令语法

df【选项】 【参数】

命令选项

  • -a--all:显示所有的文件系统,包括虚拟文件系统
  • -B:--block-size=<区块大小> 以指定的区块大小来显示区块数目;
  • -h--human-readable:以可读性较高的方式来显示信息;
  • -H--si:与-h参数相同,但在计算时是以1000 Bytes为换算单位而非1024 Bytes;
  • -i--inodes:显示inode的信息;
  • -l--local:仅显示本地端的文件系统;
  • -k--kilobytes:指定区块大小为1024字节,相当于--block-size=1k
  • -m--megabytes:指定区块大小为1048576字节,相当于--block-size=1M
  • --sync:在取得磁盘使用信息前,先执行sync指令;
  • --no-sync:在取得磁盘使用信息前,不要执行sync指令,此为预设值;
  • -P--portability:使用POSIX的输出格式;
  • -t <文件系统类型>--type=<文件系统类型>:仅显示指定文件系统类型的磁盘信息;
  • -T--print-type:显示文件系统的类型;
  • -x <文件系统类型>--exclude-type=<文件系统类型>:不要显示指定文件系统类型的磁盘信息;

命令示例

查看包含指定文件磁盘空间使用情况:

{.line-numbers}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
[root@lzg ~]# df /home/    #指定一个文件夹,查看该文件夹所在磁盘的使用情况
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 414110148 33064 414077084 1% /home
[root@lzg ~]# df /root/test.txt #指定一个文件
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda5 104806400 1692812 103113588 2% /
[root@lzg ~]# df /root/text.txt /home/ #指定多个文件或文件夹
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda5 104806400 1692812 103113588 2% /
/dev/sda2 414110148 33064 414077084 1% /home
[root@lzg ~]# df /root/ /home/ /etc/ #指定多个文件或文件夹
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda5 104806400 1692812 103113588 2% /
/dev/sda2 414110148 33064 414077084 1% /home
/dev/sda5 104806400 1692812 103113588 2% /
[root@lzg ~]# df #默认情况
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 2013532 0 2013532 0% /dev
tmpfs 2023336 0 2023336 0% /dev/shm
tmpfs 2023336 25180 1998156 2% /run

输出结果列说明:

  • Filesystem:代表该文件系统是哪个分区,所以列出的是设备名称。
  • 1K-blocks:说明下面的数字单位是1KB,可利用-h或-m来改变单位大小,也可以用-B来设置。
  • Used:已经使用的空间大小。
  • Available:剩余的空间大小。
  • Use%:磁盘使用率。如果使用率在90%以上时,就需要注意了,避免磁盘容量不足出现系统问题,尤其是对于文件内容增加较快的情况(如/home、/var/spool/mail等)。
  • Mounted on:磁盘挂载的目录,即该磁盘挂载到了哪个目录下面。

-a查看所有文件系统:

{.line-numbers}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
[root@lzg ~]# df -a
Filesystem 1K-blocks Used Available Use% Mounted on
sysfs 0 0 0 - /sys
proc 0 0 0 - /proc
devtmpfs 2013532 0 2013532 0% /dev
securityfs 0 0 0 - /sys/kernel/security
tmpfs 2023336 0 2023336 0% /dev/shm
devpts 0 0 0 - /dev/pts
tmpfs 2023336 25180 1998156 2% /run
tmpfs 2023336 0 2023336 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/blkio
cgroup 0 0 0 - /sys/fs/cgroup/hugetlb
cgroup 0 0 0 - /sys/fs/cgroup/devices
cgroup 0 0 0 - /sys/fs/cgroup/cpuset
cgroup 0 0 0 - /sys/fs/cgroup/cpu,cpuacct
cgroup 0 0 0 - /sys/fs/cgroup/perf_event
cgroup 0 0 0 - /sys/fs/cgroup/freezer
cgroup 0 0 0 - /sys/fs/cgroup/net_cls,net_prio
cgroup 0 0 0 - /sys/fs/cgroup/pids
cgroup 0 0 0 - /sys/fs/cgroup/memory
configfs 0 0 0 - /sys/kernel/config
/dev/sda5 104806400 1692308 103114092 2% /
selinuxfs 0 0 0 - /sys/fs/selinux
debugfs 0 0 0 - /sys/kernel/debug
mqueue 0 0 0 - /dev/mqueue
hugetlbfs 0 0 0 - /dev/hugepages
/dev/sda2 414110148 33064 414077084 1% /home
/dev/sda1 1038336 150724 887612 15% /boot
systemd-1 - - - - /proc/sys/fs/binfmt_misc
binfmt_misc 0 0 0 - /proc/sys/fs/binfmt_misc
tmpfs 2023336 4 2023332 1% /tmp
tmpfs 404668 0 404668 0% /run/user/0

说明:系统里面存在很多特殊的文件系统,这些比较特殊的文件系统几乎都是在内存当中,(如/proc挂载点),所以,这些特殊文件系统都不会占据硬盘空间。

指定单位大小显示:

{.line-numbers}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
[root@lzg ~]# df -B 1k            #1k为单位
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 2013532 0 2013532 0% /dev
tmpfs 2023336 0 2023336 0% /dev/shm
tmpfs 2023336 25180 1998156 2% /run
tmpfs 2023336 0 2023336 0% /sys/fs/cgroup
/dev/sda5 104806400 1692308 103114092 2% /
/dev/sda2 414110148 33064 414077084 1% /home
/dev/sda1 1038336 150724 887612 15% /boot
tmpfs 2023336 4 2023332 1% /tmp
tmpfs 404668 0 404668 0% /run/user/0
[root@lzg ~]# df --block-size 1m #1M为单位
Filesystem 1M-blocks Used Available Use% Mounted on
devtmpfs 1967 0 1967 0% /dev
tmpfs 1976 0 1976 0% /dev/shm
tmpfs 1976 25 1952 2% /run
tmpfs 1976 0 1976 0% /sys/fs/cgroup
/dev/sda5 102350 1653 100698 2% /
/dev/sda2 404405 33 404373 1% /home
/dev/sda1 1014 148 867 15% /boot
tmpfs 1976 1 1976 1% /tmp
tmpfs 396 0 396 0% /run/user/0

-h 以易读的方式显示:

{.line-numbers}
1
2
3
4
5
6
7
8
9
10
11
[root@lzg ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 2.0G 0 2.0G 0% /dev
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 2.0G 25M 2.0G 2% /run
tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
/dev/sda5 100G 1.7G 99G 2% /
/dev/sda2 395G 33M 395G 1% /home
/dev/sda1 1014M 148M 867M 15% /boot
tmpfs 2.0G 4.0K 2.0G 1% /tmp
tmpfs 396M 0 396M 0% /run/user/0

inode的数量显示:

{.line-numbers}
1
2
3
4
5
6
7
8
9
10
11
[root@lzg ~]# df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
devtmpfs 503383 376 503007 1% /dev
tmpfs 505834 1 505833 1% /dev/shm
tmpfs 505834 475 505359 1% /run
tmpfs 505834 16 505818 1% /sys/fs/cgroup
/dev/sda5 52428800 36206 52392594 1% /
/dev/sda2 207156224 23 207156201 1% /home
/dev/sda1 524288 334 523954 1% /boot
tmpfs 505834 2 505832 1% /tmp
tmpfs 505834 1 505833 1% /run/user/0

-T 显示出每个文件系统的类型:

{.line-numbers}
1
2
3
4
5
6
7
8
9
10
11
[root@lzg ~]# df -T
Filesystem Type 1K-blocks Used Available Use% Mounted on
devtmpfs devtmpfs 2013532 0 2013532 0% /dev
tmpfs tmpfs 2023336 0 2023336 0% /dev/shm
tmpfs tmpfs 2023336 25180 1998156 2% /run
tmpfs tmpfs 2023336 0 2023336 0% /sys/fs/cgroup
/dev/sda5 xfs 104806400 1692308 103114092 2% /
/dev/sda2 xfs 414110148 33064 414077084 1% /home
/dev/sda1 xfs 1038336 150724 887612 15% /boot
tmpfs tmpfs 2023336 4 2023332 1% /tmp
tmpfs tmpfs 404668 0 404668 0% /run/user/0