如何使用 df 命令检查 Linux 上的磁盘空间
问题:我知道我可以使用
df
命令来检查Linux上文件系统的磁盘空间使用情况。您能否向我展示 df 命令的实际示例,以便我能够充分利用它?
就磁盘存储而言,有许多命令行或基于 GUI 的工具可以告诉您当前的磁盘空间使用情况。这些工具以各种人类可读的格式报告详细的磁盘利用率,例如易于理解的摘要、详细的统计数据或直观的可视化。如果您只是想知道不同文件系统有多少可用磁盘空间,那么 df 命令可能就是您所需要的。

df 命令可以报告任何已安装文件系统的磁盘利用率。可以通过多种方式调用此命令。以下是一些有用的df
命令示例。
以人类可读的格式显示
默认情况下,df
命令以 1K 块为单位报告磁盘空间,这不容易解释。 -h
参数将使 df
以更易于理解的格式(例如,100K、200M、3G)打印磁盘空间。
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/ubuntu-root 909G 565G 299G 66% /
none 4.0K 0 4.0K 0% /sys/fs/cgroup
udev 3.9G 4.0K 3.9G 1% /dev
tmpfs 785M 1.2M 784M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 3.9G 63M 3.8G 2% /run/shm
none 100M 48K 100M 1% /run/user
/dev/sda1 228M 98M 118M 46% /boot
显示索引节点使用情况
当您监视磁盘使用情况时,您不仅必须注意磁盘空间,还必须注意“inode”使用情况。在Linux中,inode是一种用于存储特定文件元数据的数据结构,当创建文件系统时,会分配预定义数量的inode。这意味着文件系统可能会耗尽空间,不仅因为大文件耗尽了所有可用空间,而且还因为许多小文件耗尽了所有可用索引节点。要显示 inode 使用情况,请使用 -i
选项。
$ df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/ubuntu-root 60514304 1217535 59296769 3% /
none 1004417 13 1004404 1% /sys/fs/cgroup
udev 1000623 552 1000071 1% /dev
tmpfs 1004417 608 1003809 1% /run
none 1004417 11 1004406 1% /run/lock
none 1004417 288 1004129 1% /run/shm
none 1004417 28 1004389 1% /run/user
/dev/sda1 124496 346 124150 1% /boot
显示磁盘使用授予总计
默认情况下,df
命令显示各个文件系统的磁盘利用率。如果您想了解所有现有文件系统的总磁盘使用量,请添加 --total
选项。
$ df -h --total
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/ubuntu-root 909G 565G 299G 66% /
none 4.0K 0 4.0K 0% /sys/fs/cgroup
udev 3.9G 4.0K 3.9G 1% /dev
tmpfs 785M 1.2M 784M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 3.9G 62M 3.8G 2% /run/shm
none 100M 48K 100M 1% /run/user
/dev/sda1 228M 98M 118M 46% /boot
total 918G 565G 307G 65% -
显示文件系统类型
默认情况下,df
命令不显示文件系统类型信息。使用 -T
选项将文件系统类型添加到输出中。
$ df -T
Filesystem Type 1K-blocks Used Available Use% Mounted on
/dev/mapper/ubuntu-root ext4 952893348 591583292 312882844 66% /
none tmpfs 4 0 4 0% /sys/fs/cgroup
udev devtmpfs 4002492 4 4002488 1% /dev
tmpfs tmpfs 803536 1196 802340 1% /run
none tmpfs 5120 0 5120 0% /run/lock
none tmpfs 4017668 60176 3957492 2% /run/shm
none tmpfs 102400 48 102352 1% /run/user
/dev/sda1 ext2 233191 100025 120725 46% /boot
包含或排除特定文件系统类型
如果您想了解特定文件系统类型的可用空间,请使用“-t
”选项。您可以多次使用此选项以包含多个文件系统类型。
$ df -t ext2 -t ext4
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/ubuntu-root 952893348 591583380 312882756 66% /
/dev/sda1 233191 100025 120725 46% /boot
要排除特定文件系统类型,请使用“-x
”选项。您也可以多次使用此选项。
$ df -x tmpfs
显示特定挂载点的磁盘使用情况
如果您使用 df 指定挂载点,它将报告挂载在该位置的文件系统的磁盘使用情况。如果您指定常规文件(或目录)而不是挂载点,则 df 将显示包含该文件(或目录)的文件系统的磁盘利用率。
$ df /
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/ubuntu-root 952893348 591583528 312882608 66% /
$ df /home/dev
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/ubuntu-root 952893348 591583528 312882608 66% /
显示有关虚拟文件系统的信息
如果要显示所有现有文件系统(包括虚拟文件系统)的磁盘空间信息,请使用 -a
选项。这里,虚拟文件系统是指没有相应物理设备的伪文件系统,例如tmpfs、cgroup虚拟文件系统或FUSE文件系统。这些虚拟文件系统的大小为 0,如果没有 -a
选项,则 df
不会报告这些虚拟文件系统。
$ df -a
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/ubuntu-root 952893348 591578716 312887420 66% /
proc 0 0 0 - /proc
sysfs 0 0 0 - /sys
none 4 0 4 0% /sys/fs/cgroup
none 0 0 0 - /sys/fs/fuse/connections
none 0 0 0 - /sys/kernel/debug
none 0 0 0 - /sys/kernel/security
udev 4002492 4 4002488 1% /dev
devpts 0 0 0 - /dev/pts
tmpfs 803536 1196 802340 1% /run
none 5120 0 5120 0% /run/lock
none 4017668 58144 3959524 2% /run/shm
none 102400 48 102352 1% /run/user
none 0 0 0 - /sys/fs/pstore
cgroup 0 0 0 - /sys/fs/cgroup/cpuset
cgroup 0 0 0 - /sys/fs/cgroup/hugetlb
/dev/sda1 233191 100025 120725 46% /boot
vmware-vmblock 0 0 0 - /run/vmblock-fuse