Skip to main content

使用命令du和df检查磁盘空间

83 系统信息 03 df和du查看磁盘和目录空间占用 (六月 2025)

83 系统信息 03 df和du查看磁盘和目录空间占用 (六月 2025)
Anonim

获取Linux系统上可用和已用磁盘空间摘要的快速方法是在终端窗口中键入df命令。命令df代表“dISK Filesystem“。使用-h选项(df -h),它以”人类可读“的形式显示磁盘空间,在这种情况下,它会为您提供单位和数字。

df命令的输出是一个包含四列的表。第一列包含文件系统路径,可以是对硬盘或其他存储设备的引用,也可以是连接到网络的文件系统。第二列显示该文件系统的容量。第三列显示可用空间,最后一列显示安装该文件系统的路径。装入点是目录树中您可以找到并访问该文件系统的位置。

另一方面,du命令显示当前目录中文件和目录使用的磁盘空间。同样,-h选项(df -h)使输出更容易理解。

默认情况下,du命令列出所有子目录以显示每个子目录占用的磁盘空间。使用-s选项(df -h -s)可以避免这种情况。这只显示摘要。即所有子目录使用的组合磁盘空间。如果要显示当前目录以外的目录(文件夹)的磁盘使用情况,只需将该目录名称作为最后一个参数。例如: du -h -s图像,其中“images”将是当前目录的子目录。

有关df命令的更多信息

默认情况下,您只需要查看使用df命令时默认的可访问文件系统。

但是,您可以使用以下任一命令返回所有文件系统的使用情况,包括伪,重复和不可访问的文件系统:

df -adf -all

上面的命令对大多数人来说似乎没什么用,但接下来的命令会。默认情况下,已用和可用的磁盘空间以字节为单位列出。

当然,您可以使用以下命令:

df -h

这将以更易读的格式显示输出,例如尺寸546G,可用496G。虽然这没关系,但每个文件系统的度量单位都不同。

要标准化所有文件系统中的单位,您只需使用以下命令:

df -BMdf --block-size = M.

M代表兆字节。您还可以使用以下任何格式:

  • K = Kilobytes
  • M =兆字节
  • G =千兆字节
  • T =太字节
  • P =千兆字节
  • E = Exabyte
  • Z = Zettabyte
  • Y = Yottabyte

一千字节是1024字节,兆字节是1024千字节。您可能想知道为什么我们使用1024而不是1000.这与计算机的二进制构成有关。您从2开始,然后是4,8,16,32,64,128,256,512,然后是1024。

然而,人类倾向于以十进制计数,因此我们习惯于在1,10,100,1000中进行思考。您可以使用以下命令以十进制格式显示值,而不是二进制格式。 (即它以1000的幂而不是1024打印值)。

df -Hdf --si

你会发现像2.9G这样的数字变成3.1G。

磁盘空间不足并不是运行Linux系统时可能遇到的唯一问题。 Linux系统也使用inode的概念。您创建的每个文件都有一个inode。但是,您可以在也使用inode的文件之间创建硬链接。

文件系统可以使用的inode数量有限制。

要查看文件系统是否接近达到其限制,请运行以下命令:

df -idf --inodes

您可以自定义df命令的输出,如下所示:

df --output = FIELD_LIST

FIELD_LIST的可用选项如下:

  • 资源
  • 文件系统类型
  • ITOTAL
  • 我用了
  • iavail
  • ipcent
  • 尺寸
  • 用过的
  • pcent
  • 文件
  • 目标

您可以组合任何或所有字段。例如:

df --output = source,size,used

您可能还希望在屏幕上看到值的总计,例如所有文件系统中的总可用空间。

为此,请使用以下命令:

df --total

默认情况下,df列表不显示文件系统类型。您可以使用以下命令输出文件系统类型:

df -Tdf --print-type

文件系统类型类似于ext4,vfat,tmpfs

如果您只想查看特定类型的信息,可以使用以下命令:

df -t ext4dt --type = ext4

或者,您可以使用以下命令排除文件系统。

df -x ext4df --exclude-type = ext4

关于杜司令部的更多信息

您已阅读的du命令列出了有关每个目录的文件空间使用情况的详细信息。

默认情况下,在列出每个项目后,将显示一个回车,其中列出了新行上的每个新项目。您可以使用以下命令省略回车:

du -0du --null

除非您想快速查看总使用量,否则这不是特别有用。

更有用的命令是能够列出所有文件而不仅仅是目录所占用的空间。

为此,请使用以下命令:

du -adu --all

您可能希望使用以下命令将此信息输出到文件:

du -a> filename

与df命令一样,您可以指定输出的显示方式。默认情况下,它以字节为单位,但您可以使用以下命令选择千字节,兆字节等:

du -BMdu --block-size = M.

您还可以使用以下命令获取2.5G等人类可读的内容:

du -h杜 - 可读

要在最后获得总计,请使用以下命令:

du -cdu --total