Есть 2 возможности.
Небольшие файлы
Скорее всего, это не меньше, чем его содержание. As Nils Pipenbrinck wrote, du
отображает объем пространства, выделяемого файловой системой, которое, поскольку файлы хранятся в блоках файловой системы, больше, чем логический размер файла.
Чтобы просмотреть логический размер файла, используйте du --apparent-size
. В этом случае результат должен быть меньше, чем tar-файл.
разреженные файлы
Tar файлы могут хранить разреженные файлы. Если tarball был создан с использованием --sparse
, будут записаны отверстия в разреженных файлах, поэтому размер tarball может быть меньше логического размера файлов.
Если информация о разреженности в извлеченной копии была как-то потеряна (например, если вы извлекли tarball в файловую систему, которая не поддерживает разреженные файлы, или если она была сжата, а затем распакована и т. Д.), То df
будет сообщать расширенный размер.
Идеальный смысл. Я полностью забыл о размере блока. – ieure
В отличие от zip-файлов, которые сжимают, а затем архивируют. – Thom