在 Linux 上解释 Gnu `df` 命令大小结果

在 Linux 上解释 Gnu `df` 命令大小结果

我无法理解如何df报告文件系统的大小:

$ df
Filesystem     1K-blocks     Used     Available   Use%   Mounted on
/dev/sda3      924815840     63819748 813948260   8%        /
--snip--

对于根分区,我如何解释结果:

1K-blocks 列这是文件系统的总大小(以 1K-block 为单位)。换句话说,对于 /dev/sda3:

文件系统的总大小(以字节为单位)= 1024 * 924815840

保留块大小(以 1K 为单位)= 924815840 - (63819748 + 813948260)

<Used><Available>列 只列出普通用户使用的块,不包括保留的块。现在让我们运行df -h来检查结果:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3       882G   61G  777G   8% /

我对G,df报告感到困惑Gib,不知道为什么他们选择Gib后缀而不是Gib.同样的1K,它实际上是 1Kib。现在,我不想在这里耍小聪明,现在谁有时间玩人类智能!如果您按照我上面计算的方式转换单位,您会发现这些值匹配,因此我对报告的大小的解释df是正确的。当您运行fdisk报告完全不同的 filysystem 大小时,问题就开始了:

Device        Start        End    Sectors   Size Type
/dev/sda3  72265728 1953523711 1881257984 897.1G Linux filesystem

这里的尺寸要大得多(897.1G)而不是报告的那个df (882G),谢谢fdisk你给我更多的空间!但我想知道哪个命令是真实的?

答案1

他们说的都是实话,只是测量的数量不同而已。

fdisk显示分区的大小:这会测量驱动器上的原始扇区。

df显示可用空间。从分区的 897.1GiB 开始,您会损失一些文件系统数据结构的空间,导致df报告的总计为 882GiB。然后你就“失去”了你所占的保留空间。

相关内容