为什么单个文件占用的磁盘空间这么大?

为什么单个文件占用的磁盘空间这么大?

我读过几篇帖子,解释道,当您有许多小文件时,Windows 报告的“磁盘大小”可能比报告的“大小”大得多。这对我来说很有道理,但据我所知,“簇大小”或“分配单元”通常为 4 kB,这意味着(如果我理解正确的话)单个文件在“磁盘大小”指标上不应超过 4 kB。

我有一个 tiff 图像,据说“大小”为 65 kB,但“磁盘大小”为 1.00 MB。造成这种巨大差异的原因是什么?

更新:我现在意识到该文件位于运行 Linux 的 NAS 驱动器上。我检查了分配单元大小,它只有 4 kB,而不是 1 MB,例如:

bash-3.2# /sbin/blockdev --getbsz /dev/sda1

4096

我还检查了一个“大小”为 1 kB 的文件,它在“磁盘大小”下显示为 1.00 MB。

答案1

磁盘上的数据(文件是二进制数据)以簇的形式保存。这就是硬盘驱动器的工作方式。在此示例中,簇的长度为 4kb。可以选择以较小的分配单元格式化磁盘。

粗略地讲,可以将簇视为用于存储二进制数据的 4kb 插槽。如果文件大于 4kb,则需要额外的插槽。如果文件小于 4kb,则只需要一个插槽。

例如,假设有一个 5kb 的文件。由于它无法放入单个簇,因此将使用一个额外的簇。因此,即使文件的实际大小为 5kb,磁盘大小也将为 8kb。

尝试创建一个小文件(小于 4kb),并查看其磁盘大小是否正好是 4kb。

相关内容