侧边栏壁纸
Linux入门自学网博主等级

每日学一条Linux命令,终成Linux大神

  • 累计撰写 725 篇文章
  • 累计创建 143 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Linux df命令教程:如何查看磁盘空间使用情况和文件系统类型

Linux df命令介绍

Linux df(英文全拼:disk free)命令用于显示目前在 Linux 系统上的文件系统磁盘使用情况统计。它可以用来查看磁盘已被使用多少空间和还剩余多少空间。它还可以显示文件系统的类型、大小、已用空间、可用空间、使用率和挂载点等信息。df命令是一个非常实用的工具,可以帮助我们监控磁盘空间的使用情况,避免磁盘空间不足导致的系统问题。

适用的Linux版本

df命令是一个标准的Linux命令,适用于大多数的Linux发行版,如Ubuntu、Debian、Fedora、CentOS等。如果某些Linux版本没有安装df命令,可以通过包管理器来安装。例如,在CentOS 7中,可以使用以下命令来安装df命令:

# 使用yum包管理器安装coreutils包,该包包含了df命令
sudo yum install coreutils

在CentOS 8中,可以使用以下命令来安装df命令:

# 使用dnf包管理器安装coreutils包,该包包含了df命令
sudo dnf install coreutils

Linux df命令的基本用法

df命令的基本语法格式为:

# 显示所有已挂载文件系统的磁盘使用情况
df [选项]

# 显示指定文件或目录所在文件系统的磁盘使用情况
df [选项] 文件或目录

Linux df命令的常用选项说明

df命令有很多选项,可以用来控制输出的格式和内容。下表列出了一些常用的选项及其作用:

选项作用
-a, --all显示所有的文件系统,包括虚拟文件系统
-B, --block-size=SIZE指定单位大小,比如1K, 1M, 1G等
-h, --human-readable以人类可读的格式显示,如GB, MB, KB等
-H, --si和-h参数一样,但是以1000为单位而不是1024
-i, --inodes显示inode信息而不是块使用量
-k以KB为单位显示各文件系统,相当于--block-size=1K
-m以MB为单位显示各文件系统,相当于--block-size=1M
-l, --local只显示本地文件系统
-P, --portability使用POSIX输出格式
-t, --type=TYPE只显示指定类型的文件系统
-T, --print-type显示文件系统类型
-x, --exclude-type=TYPE不显示指定类型的文件系统

Linux df命令的实例

下面给出一些使用df命令的实例,以便更好地理解和掌握该命令。

  • 显示所有已挂载文件系统的磁盘使用情况,默认以1K为单位
# 不带任何选项的df命令
df

# 输出结果示例:
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda2       16036224 2749160  12459316  19% /
/dev/sda1         295561   16911    263390   7% /boot
tmpfs            1028272       0   1028272   0% /dev/shm
  • 显示指定文件或目录所在文件系统的磁盘使用情况
# 指定一个目录,查看该目录所在文件系统的使用情况
df /home

# 输出结果示例:
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda3       4956316  141376   4559108   4% /home

# 指定一个文件,查看该文件所在文件系统的使用情况
df /bin/ls

# 输出结果示例:
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda2       16036224 2749160  12459316  19% /

# 指定多个文件或目录,查看它们所在文件系统的使用情况
df /bin/ls /home /usr/

# 输出结果示例:
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda2       16036224 2749160  12459316  19% /
/dev/sda3       4956316  141376   4559108   4% /home
/dev/sda2       16036224 2749160  12459316  19% /
  • 显示所有文件系统,包括虚拟文件系统,如proc, sysfs, devpts等
# 使用-a或--all选项的df命令
df -a

# 输出结果示例:
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda2       16036224 2749160  12459316  19% /
proc                   -       -         -    - /proc
sysfs                  -       -         -    - /sys
devpts                 -       -         -    - /dev/pts
/dev/sda1         295561   16911    263390   7% /boot
tmpfs            1028272       0   1028272   0% /dev/shm
none                   -       -         -    - /proc/sys/fs/binfmt_misc
none                   -       -         -    - /proc/fs/vmblock/mountPoint
sunrpc                 -       -         -    - /var/lib/nfs/rpc_pipefs
  • 使用人类可读的格式显示磁盘使用情况,如GB, MB, KB等
# 使用-h或--human-readable选项的df命令
df -h

# 输出结果示例:
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        16G  2.7G   12G  19% /
/dev/sda1       290M   17M  258M   7% /boot
tmpfs           1.0G     -    -    - /dev/shm
  • 显示文件系统的类型
# 使用-T或--print-type选项的df命令
df -T

# 输出结果示例:
Filesystem     Type     Size   Used Avail Use% Mounted on
/dev/sda2      ext4      ...    ...   ... ... /
/dev/sda1      ext4      ...    ...   ... ... /boot
tmpfs          tmpfs     ...    ...   ... ... /dev/shm
  • 只显示指定类型的文件系统,如ext4
# 使用-t或--type选项的df命令,后面跟上要显示的文件系统类型名称
df -t ext4

# 输出结果示例:
Filesystem     Size   Used Avail Use% Mounted on
/dev/sda2      ...    ...   ... ... /
/dev/sda1      ...    ...   ... ... /boot
  • 不显示指定类型的文件系统,如tmpfs
# 使用-x或--exclude-type选项的df命令,后面跟上要排除的文件系统类型名称
df -x tmpfs

# 输出结果示例:
Filesystem     Size   Used Avail Use% Mounted on
/dev/sda2      ...    ...   ... ... /
/dev/sda1      ...    ...   ... ... /boot

Linux df命令的注意事项

  • df命令只能显示已挂载的文件系统的磁盘使用情况,如果要查看未挂载的分区或设备的信息,可以使用fdisk, parted等命令。
  • df命令显示的磁盘使用情况可能不是实时的,因为Linux会缓存一些数据和元数据,如果如果要强制刷新缓存,可以使用sync命令,或者重新挂载文件系统。
  • df命令显示的磁盘使用情况可能和du命令有所不同,因为df命令是基于文件系统的统计,而du命令是基于文件的统计。如果文件被删除但是还被某个进程占用,那么df命令会认为该文件还占用空间,而du命令会忽略该文件。
  • df命令的输出结果可能会受到文件系统的类型和参数的影响,比如一些文件系统会预留一定比例的空间给超级用户或者元数据,这部分空间可能不会被df命令计算在可用空间中。
0

评论区