Linux中的Df命令(检查磁盘空间)
我的硬盘上还剩下多少空间?
是否有足够的可用磁盘空间来下载大文件或者安装新的应用程序?
在Linux和Unix操作系统上,我们可以使用'df'命令获取有关系统磁盘空间使用情况的详细报告。
使用df命令
“ df”命令的常规语法如下:
df [OPTIONS]... FILESYSTEM...
当不带任何参数使用时,“ df”命令将显示有关所有已挂载文件系统的信息:
df
Filesystem 1K-blocks Used Available Use% Mounted on dev 8172848 0 8172848 0% /dev run 8218640 1696 8216944 1% /run /dev/nvme0n1p3 222284728 183057872 27865672 87% / tmpfs 8218640 150256 8068384 2% /dev/shm tmpfs 8218640 0 8218640 0% /sys/fs/cgroup tmpfs 8218640 24 8218616 1% /tmp /dev/nvme0n1p1 523248 107912 415336 21% /boot /dev/sda1 480588496 172832632 283320260 38% /data tmpfs 1643728 40 1643688 1% /run/user/1000
每行包括以下几列:
- “文件系统”-文件系统的名称。
- “ 1K块”-文件系统的大小,以1K块为单位。
- “已用”-已用空间(以1K块为单位)。
- “可用”-1K块中的可用空间。
- “使用百分比”-已用空间的百分比。
- “安装在”安装文件系统的目录上。
要仅显示特定文件系统的信息,请将其名称或者安装点传递给'df'命令。
例如,要显示挂载到系统根目录('/')的文件系统上的可用空间,可以使用'df/dev/nvme0n1p3'或者'df /'。
df /
Filesystem 1K-blocks Used Available Use% Mounted on /dev/nvme0n1p3 222284728 183057872 27865672 87% /
以人类可读的格式显示磁盘空间使用情况
默认情况下,“ df”命令以1 KB的块显示磁盘空间,以KB为单位显示已用和可用磁盘空间的大小。
要以人类可读的格式(千字节,兆字节,千兆字节等)显示有关磁盘驱动器的信息,请使用“ -h”选项调用“ df”命令:
df -h
Filesystem Size Used Avail Use% Mounted on dev 7.8G 0 7.8G 0% /dev run 7.9G 1.8M 7.9G 1% /run /dev/nvme0n1p3 212G 176G 27G 88% / tmpfs 7.9G 145M 7.7G 2% /dev/shm tmpfs 7.9G 0 7.9G 0% /sys/fs/cgroup tmpfs 7.9G 24K 7.9G 1% /tmp /dev/nvme0n1p1 511M 106M 406M 21% /boot /dev/sda1 459G 165G 271G 38% /data tmpfs 1.6G 16K 1.6G 1% /run/user/1000
文件系统类型
'-T'选项告诉'df'显示文件系统类型:
df -t
输出包括名为“ Type”的添加列,显示文件系统的类型:
Filesystem Type 1K-blocks Used Available Use% Mounted on dev devtmpfs 8172848 0 8172848 0% /dev run tmpfs 8218640 1744 8216896 1% /run /dev/nvme0n1p3 ext4 222284728 183666100 27257444 88% / tmpfs tmpfs 8218640 383076 7835564 5% /dev/shm tmpfs tmpfs 8218640 0 8218640 0% /sys/fs/cgroup tmpfs tmpfs 8218640 24 8218616 1% /tmp /dev/nvme0n1p1 vfat 523248 107912 415336 21% /boot /dev/sda1 ext4 480588496 172832632 283320260 38% /data tmpfs tmpfs 1643728 40 1643688 1% /run/user/1000
如果要将列表限制为特定类型的文件系统,请使用“ -t”选项,后跟该类型。
这是显示如何列出所有ext4分区的示例:
df -t ext4
Filesystem 1K-blocks Used Available Use% Mounted on /dev/nvme0n1p3 222284728 183666112 27257432 88% / /dev/sda1 480588496 172832632 283320260 38% /data
与上面类似,'-x'选项允许我们将输出限制为非特定类型的文件系统:
df -x tmpfs
Filesystem 1K-blocks Used Available Use% Mounted on dev 8172848 0 8172848 0% /dev run 8218640 1696 8216944 1% /run /dev/nvme0n1p3 222284728 183057872 27865672 87% / /dev/nvme0n1p1 523248 107912 415336 21% /boot /dev/sda1 480588496 172832632 283320260 38% /data
显示索引节点使用情况
索引节点是Unix和Linux文件系统中的数据结构,其中包含有关文件或者目录的信息,例如文件大小,所有者,设备节点,套接字,管道等,但da除外。
当使用“ -i”选项调用时,“ df”命令将输出有关文件系统索引节点使用情况的信息。
以下命令将以可读格式显示有关安装在系统根目录“ /”上的文件系统上的索引节点的信息:
df -ih /
Filesystem Inodes IUsed IFree IUse% Mounted on /dev/nvme0n1p3 14M 1.9M 12M 14% /
当使用“ -i”选项时,输出的每一行包括以下几列:
- “文件系统”-文件系统的名称。
- “ Inodes”-文件系统上的inode总数。
- “ IUsed”-使用的索引节点数。
- “ IFree”-空闲(未使用)inode的数量。
- “ IUse%”-使用的索引节点的百分比。
- “安装在”安装文件系统的目录上。
输出格式
“ df”命令还允许我们自定义输出格式。
要指定要在命令输出中显示的字段,请使用'--output [= FIELD_LIST]'选项。
“ FIELD_LIST”是要用逗号分隔的列列表,这些列将包含在输出中。
每个字段只能使用一次。
有效的字段名称是:
- 'source'-文件系统源。
- 'fstype'-文件系统类型。
- 'itotal'-索引节点的总数。
- 'iused'-使用的索引节点数。
- 'iavail'-可用索引节点的数量。
- 'ipcent'-使用的inode的百分比。
- 'size'-总磁盘空间。
- 'used'-使用的磁盘空间。
- 'avail'-可用磁盘空间。
- 'pcent'-已用空间的百分比。
- 'file'-文件名(如果在命令行上指定)。
- 'target'-挂载点。
例如,要以人类可读的格式显示所有ext4分区的输出,仅显示文件系统名称和大小以及已用空间的百分比,我们将使用:
df -h -t ext4 --output=source,size,pcent
Filesystem Size Use% /dev/nvme0n1p3 212G 88% /dev/sda1 459G 38%