'df' 命令是Disk Free的缩写,用于快速打印不同分区和文件系统上正在使用的磁盘空间的概览。
df 来自 GNU Coreutils 包,默认情况下应该在基于 Unix/Linux 的操作系统中可用。
如何使用 df - 命令示例
- 1.运行df
如果我们不带任何选项运行 df 命令,它将打印出所有已安装文件系统的磁盘使用信息。
[jack@onitroad ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/centos-root 18307072 3444056 14863016 19% / devtmpfs 1922332 0 1922332 0% /dev tmpfs 1933472 0 1933472 0% /dev/shm tmpfs 1933472 8800 1924672 1% /run tmpfs 1933472 0 1933472 0% /sys/fs/cgroup /dev/sda1 508588 145732 362856 29% /boot tmpfs 386696 0 386696 0% /run/user/0
- 人类可读的输出
正如我们在上面看到的,默认情况下,打印输出以 KB 为单位显示所有大小。我们可以选择指定 -h 选项,该选项将以人类可读的格式显示输出,例如以 MB 和 GB 显示大小,这更容易理解。
- 人类可读的输出
[jack@onitroad ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 18G 3.3G 15G 19% / devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 1.9G 8.6M 1.9G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/sda1 497M 143M 355M 29% /boot tmpfs 378M 0 378M 0% /run/user/0
- 打印总的统计信息
到目前为止,使用 df 我们可以打印出每个单独文件系统的使用情况。使用 --total 选项,我们可以获得整体结果。
- 打印总的统计信息
[jack@onitroad ~]# df --total -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 18G 3.3G 15G 19% / devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 1.9G 8.6M 1.9G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/sda1 497M 143M 355M 29% /boot tmpfs 378M 0 378M 0% /run/user/0 total 26G 3.5G 23G 14%
我们可以看到底部打印了一行,其中包括所有文件系统的总大小、使用的总大小和可用的总大小。
- 显示索引节点
我们可以使用 -i 选项来打印 inode 使用情况,而不是列出块使用情况。
- 显示索引节点
[jack@onitroad ~]# df -hi Filesystem Inodes IUsed IFree IUse% Mounted on /dev/mapper/centos-root 18M 41K 18M 1% / devtmpfs 470K 383 469K 1% /dev tmpfs 473K 1 473K 1% /dev/shm tmpfs 473K 480 472K 1% /run tmpfs 473K 13 473K 1% /sys/fs/cgroup /dev/sda1 500K 331 500K 1% /boot tmpfs 473K 1 473K 1% /run/user/0
- 指定文件系统
默认情况下 df 会显示可用的文件系统,我们可以指定某个文件系统的路径以仅查看与其相关的信息。
- 指定文件系统
[jack@onitroad ~]# df -h /home/ Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 18G 3.3G 15G 19% /
- 不显示外部文件系统
默认情况下,运行 df 命令将显示任何外部安装的文件系统,包括来自外部 NFS 或者 Samba 服务器的文件系统。我们可以使用 --local 选项在结果中隐藏这些外部文件系统。
- 不显示外部文件系统
[jack@onitroad ~]# df --local
- 7.打印文件系统类型
使用 -T 选项,我们可以看到输出中包含的文件系统类型。
[jack@onitroad ~]# df -hT Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/centos-root xfs 18G 3.3G 15G 19% / devtmpfs devtmpfs 1.9G 0 1.9G 0% /dev tmpfs tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs tmpfs 1.9G 8.6M 1.9G 1% /run tmpfs tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/sda1 xfs 497M 143M 355M 29% /boot tmpfs tmpfs 378M 0 378M 0% /run/user/0
- 显示特定文件系统类型
使用 -t 选项,我们可以指定一个特定的文件系统,并且只打印那些文件系统,例如这里我们声明我们只想查看 xfs 的类型,这就是返回的全部内容。
- 显示特定文件系统类型
[jack@onitroad ~]# df -ht xfs Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 18G 3.3G 15G 19% / /dev/sda1 497M 143M 355M 29% /boot
- 排除特定文件系统
我们也可以与此相反,从输出中排除指定的文件系统类型,这里我们忽略所有 xfs 结果。
- 排除特定文件系统
[jack@onitroad ~]# df -hx xfs Filesystem Size Used Avail Use% Mounted on devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 1.9G 8.6M 1.9G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup tmpfs 378M 0 378M 0% /run/user/0
- 确保最新的结果
默认情况下,df 命令使用 --no-sync 选项运行,该选项不会在报告使用信息之前执行同步系统调用。虽然这可能运行得更快,但我们可以选择使用 --sync 选项强制同步,这将强制同步导致输出完全最新。
- 确保最新的结果
[jack@onitroad ~]# df --sync
- 11.十进制输出而不是二进制
虽然 -h 选项以人类可读的格式打印输出,但它也基于相当标准的 1024 的幂工作。我们可以使用 -H 代替,它的工作原理类似,只是它基于 1000 的幂工作。
[jack@onitroad ~]# df -H Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 19G 3.6G 16G 19% / devtmpfs 2.0G 0 2.0G 0% /dev tmpfs 2.0G 0 2.0G 0% /dev/shm tmpfs 2.0G 9.0M 2.0G 1% /run tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup /dev/sda1 521M 150M 372M 29% /boot tmpfs 396M 0 396M 0% /run/user/0
- 包括所有文件系统
我们可以使用 -a 选项打印所有文件系统的结果。这将显示默认隐藏的虚拟文件系统,它们通常是特殊的文件系统,例如 /proc,没有实际存储空间。
- 包括所有文件系统
[jack@onitroad ~]# df -ha Filesystem Size Used Avail Use% Mounted on rootfs - - - - / sysfs 0 0 0 - /sys proc 0 0 0 - /proc devtmpfs 1.9G 0 1.9G 0% /dev securityfs 0 0 0 - /sys/kernel/security tmpfs 1.9G 0 1.9G 0% /dev/shm devpts 0 0 0 - /dev/pts tmpfs 1.9G 8.6M 1.9G 1% /run tmpfs 1.9G 0 1.9G 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/devices cgroup 0 0 0 - /sys/fs/cgroup/net_cls 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/freezer 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/centos-root 18G 3.3G 15G 19% / selinuxfs 0 0 0 - /sys/fs/selinux systemd-1 - - - - /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/sda1 497M 143M 355M 29% /boot tmpfs 378M 0 378M 0% /run/user/0 binfmt_misc 0 0 0 - /proc/sys/fs/binfmt_misc
- 13.显示df版本
我们可以通过 --version 选项查看可用的 df 版本。
[jack@onitroad ~]# df --version df (GNU coreutils) 8.22 Copyright (C) 2013 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later . This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Written by Torbjörn Granlund, David MacKenzie, and Paul Eggert.
- 显示帮助
如果我们需要使用 --help 选项获得更多详细信息,我们可以显示有用的帮助信息。请注意,为简洁起见,未显示该命令的完整输出。
- 显示帮助
[jack@onitroad ~]# df --help Usage: df [OPTION]... [FILE]...
日期:2020-07-07 20:57:02 来源:oir作者:oir