Размер файла размер на диске: «Размер» и «На диске» в свойствах файла: какая между ними разница

«Размер» и «На диске» в свойствах файла: какая между ними разница

При просмотре свойств любого файла вы можете видеть два параметра, указывающих его вес – «Размер» и «На диске». И эти показатели будут разными. И, наверняка, вам было интересно, почему они разные, чем они отличаются, и каков действительный вес просматриваемого файла. В данной статье я вам это доступно объясню.

Итак, если кликнуть правой кнопкой на файл и выбрать пункт «Свойства», то мы видим окно, в котором можем посмотреть вес данного файла. Они указываются в строках «Размер» и «На диске». Эти параметры разные.

Почему они разные и какой реальный вес файла? Чтобы это понять, отойдём от компьютерной темы и обратимся к жизненному примеру.

Представьте себе, что у вас есть 3 бочки по 10 литров каждая. И вам необходимо сохранить в них 12 литров пива и 5 литра томатного сока. Вы заливаете пиво в первую бочку, туда пометилось только 10 литров. Оставшиеся 2 литра пива вы заливаете во вторую бочку. 5 литров томатного сока можно пометить в последнюю третью бочку.

В результате у вас получилась одна полная почка пива, одна бочка пива заполнена лишь на 2 литра, и ещё одна бочка томатного сока, заполнена только наполовину.

Вернёмся к компьютерам. На жёстком диске с файловой системой NTFS (на компьютерах чаще всего именно такая файловая система) существуют ячейки размером по 4 Кб. Это как наши бочки по 10 литров. Файлы, сохраняемые на жёстком диске, будут заливаться в эти «бочки» по 4 Кб. Таким образом, если мы сохраняем на компьютере файл размером, допустим, в 8 Кб, он займёт 2 ячейки памяти (2 бочки). Если мы сохраняем файл размером в 5 Кб, он тоже замёт 2 ячейки (4 Кб в одну и 1 Кб в другую). Файлы, размером менее 4 Кб занимают одну ячейку.

Продолжаем вести линию от бочек с пивом и томатным соком. Когда вы залили 10 литров пива в одну бочку, а оставшиеся 2 литра в другую, вы не стали наполнять эту не до конца залитую бочку пива томатным соком (ведь нельзя же смешивать пиво и сок). Вы в этом случае использовали другую, новую бочку.

Так и с ячейками памяти. Если файл размером 5 Кб, занимает 2 ячейки (4 Кб в одной и 1 Кб в другой), то эта не заполнена до конца ячейка, не займётся другим файлом. Другой файл будет записываться в следующую свободную ячейку.

И теперь вернёмся к самому началу – параметрам «Размер» и «На диске». «Размер» указывает, сколько есть реального объёма файла, то есть, сколько пива было в действительности. А «На диске» показывает, сколько этот файл занял места на диске, то есть, сколько объёма бочек ушло на сохранения имеющегося пива.

Параметр «Размер» является реальным размером файла. Файл будет таким, на какой носитель вы бы его не переместили. А «На диске» указывает, сколько места он занимает на жёстком диске. Он может зависеть от файловой системы носителя. «Размер» и «На диске» всегда близки, но первый меньше второго.

Для закрепления знаний обратимся к скриншотам с примерами. На первом скриншоте мы видим параметры «Размер» и «На диске» равные 10 байт и 4 Кб, соответственно.

Это значит, что файл реально всего весит 10 байт, на жёстком диске занимает одну целую ячейку – 4 Кб. В этой ячейке другие файлы не будут записаны.

На втором скриншоте параметры «Размер» и «На диске» равны 5.99 Кб и 8 Кб, соответственно.

Это значит, что реальный размер файла 5,99 Кб, а на диске он занимает две ячейки памяти, то есть 8 Кб. При этом одна из них заполнена полностью на 4 Кб, а вторая частично – на 1,99 Кб. И другой файл в эту, не до конца заполненную, ячейку памяти не запишется.

Общий размер и Размер на диске

Информация о материале:
Опубликовано: 2017-01-25
Обновлено: 2017-01-25
Автор: АдМинь БагоИскатель

Многих интересует почему в свойствах файла или каталога отображается разница между размером файла и занимаемым местом на диске.

Кликнув на файле или каталоге правой кнопкой «мыши» и выбрав пункт «Свойства» можно увидеть разницу между «Размер» и «На диске». Например в файловом менеджере SpaceFM эта информация представлена как «Общий размер» и «Размер на диске«.

Почему «Размер на диске» больше чем «Общий размер»

Причина в разнице между реальным размером файла и фактически занимаемым местом на жестком диске кроется в размере блока, который автоматически или вручную был выбран при форматировании диска.

Большинство современных файловых систем могут работать с размерами блока от 1 КБ (1024 байта) до 64 КБ (65536 байт). При создании файла для его хранения на диске ему отводится определённое количество блоков.

Например, если в файловой системе, которая отформатирована с размером блока в 4 КБ (4096 байт), создать пустой текстовый файл, то его «Размер» (Общий размер) будет 0 байт, а фактически «На диске» (Размер на диске) он будет занимать 4 КБ (4096 байт).

Другими словами, под хранение файла отводится минимум один блок файловой системы, а если файл не помещается в один блок, то ему отводится ещё один, и так далее пока файл не поместится полностью. Когда файл не помещается в один блок, то в таком случае мы получаем его фрагментацию — т. е. файл разбивается на фрагменты размером в 4 КБ (4096 байт) и помещается в отдельные ячейки (блоки) файловой системы.

Почему «Общий размер» больше чем «Размер на диске»

Бывают также и такие, казалось бы парадоксальные, случаи, когда файловый менеджер может выдать результат в котором «Размер» (Общий размер) окажется больше, чем фактически «На диске» (Размер на диске).

Например «Общий размер:» корневого раздела / 281,0 Г ( 1071898461 байт ), а «Размер на диске:» 274,5 Г ( 2703195136 байт ). Так может произойти, например, из-за использования NTFS сжатия на разделе.

В данном случае так и произошло, ОС Linux, анализировался корневой раздел / в структуре которого в точку /mnt/BACKUP был смонтирован NTFS раздел с размером блока в 64 кб и активированным на нём NTFS сжатием.

Какой размер блока выбирать при форматировании диска

Для операционной системы, включая домашние каталоги пользователей, вполне оптимальным размером является стандартный размер блока в 4 КБ.

А вот для хранения больших мультимедиа (аудио, видео) файлов, минимальный размер каждого из которых всегда больше 1-3 МБ, лучше конечно выделить отдельный раздел и отформатировать его с максимальным размером блока в 64 КБ.

Что касается виртуальных серверов используемых под обычные веб-сайты, то в этом случае возможно будет лучше снизить размер блока до 2, а то и до 1 КБ — ведь от общего числа файлов хорошо оптимизированного сайта может быть около половины файлов не превышающий даже 1 КБ (80, 500, 800 байт).

  • Файловая система
  • Справка
  • NTFS
  • Проблемы
  • Назад
  • Вперед
Добавить комментарий

окон — В чем разница между «Размером» и «Размером на диске»?

Вы не можете получить доступ к каждому отдельному байту на носителе данных отдельно. Это было бы ужасно неэффективно, потому что системе нужен какой-то способ отслеживать, какие из них используются, а какие свободны (т. байт, т. е. 1-к-1, список будет таким же большим, как и сам носитель!)

Вместо этого носитель разбивается на куски, блоки, блоки, группы, называйте их как хотите (технический термин кластеров ), каждый из которых содержит — постоянное — количество байтов (обычно вы можете указать размер кластеров, поскольку для разных целей требуются разные размеры для уменьшения потерь).

Когда файл сохраняется на диск, размер файла делится на размер кластера и при необходимости округляется от до . Это означает, что если размер файла не делится точно на размер кластера, часть кластера оказывается неиспользованной и, таким образом, тратится впустую.

Когда вы просматриваете свойства файла, вы видите истинный размер файла, а также размер, который он занимает на диске, включая любой «пробел», то есть неиспользуемые «концы кластера». Обычно это немного на файл и размер на диске обычно почти равен фактическому размеру, но когда вы суммируете неиспользуемое пространство от всех тысяч файлов на диске, они могут суммироваться. Поэтому, когда вы просматриваете размер большой папки, особенно с большим количеством крошечных файлов, которые меньше кластера, размер на диске (т. е. объем дискового пространства, отмеченный как используемый) может оказаться значительно больше, чем фактический размер (т. е. объем пространства, который фактически требуется файлам).

В случае, описанном выше, вы можете попробовать уменьшить размер кластера, чтобы каждый файл занимал меньше места. Как правило, диск с большей частью потерянных небольших файлов должен использовать наименьший возможный размер кластера (чтобы уменьшить количество отходов), а диск с в основном большими файлами должен использовать максимально возможный размер кластера (таким образом структуры бухгалтерского учета в конечном итоге становятся меньше).

Даже на более низком уровне, если каждый кластер представляет собой только один сектор, если только файл не является точным кратным размером секторов на диске (обычно традиционно 512 байт, сейчас часто 4,096 с дисками расширенного формата), то между концом файла и концом сектора останется неиспользуемое пространство.

Еще один сценарий, в котором вы можете увидеть разницу между фактическим размером файла и размером на диске , связан со сжатием. Когда диск сжат (например, с использованием DriveSpace, сжатия NTFS и т. д.), тогда будет разница между фактическим размером файла (который необходимо знать) и фактическим размером, который занимает файл (т. е. использует или «занимает») на диске.

Еще один сценарий, который может привести к различиям, связан с жесткими ссылками. В файловых системах, поддерживающих жесткие ссылки, когда создается дубликат файла, вместо создания совершенно нового файла, который занимает место для себя, файловая система создает ярлык для файла, чтобы оба (или все три и т. копии указывают на один и тот же физический файл на диске. Поэтому, когда есть два файла, указывающих на одни и те же данные, каждый из них имеет одинаковый размер, но занимает лишь немного больше места, чем место для хранения одной копии.

файловых систем — Почему такая большая разница между «Размером» и «Размером на диске»?

Как уже объяснялось, наиболее распространенной причиной разницы в размерах является используемое пространство по сравнению с выделенным пространством. Но это не единственный возможный вариант, в NTFS есть функция добавления скрытых данных в файлы. Эта возможность использовалась программами-вымогателями для здравоохранения в конце 2019 года.

Ветвь файла и альтернативный поток данных

«Вилка ресурсов» использовалась Apple с 1984 года (Macintosh) для хранения основного содержимого программы (инструкций) и связанные ресурсы (например, значки и меню) в одном файле. Встраивание ресурсов в исполняемые файлы — распространенная техника, а вилки — нет.

Apple последовательно разрабатывала файловые системы Macintosh для поддержки разветвления файлов, и когда Microsoft разработала NTFS для замены FAT, разветвление также было введено под названием «альтернативный поток данных» (ADS).

В NTFS файл содержит:

  • Обязательный безымянный поток данных (UDS)
  • Один или несколько необязательных альтернативных потоков данных (ADS).

Спрятан на видном месте

Разветвление файлов — это неплохо, за исключением того, что NTFS ADS не поддерживается обычными инструментами, включая проводник Windows, ADS — де-факто скрытая функция, неожиданный подарок для хакеров. Из Википедии:

Альтернативные потоки не указаны в проводнике Windows, и их размер
не входит в размер файла.

Хотя размер файла, который сообщает только размер UDS, не изменяется при наличии ADS, выделенный размер (кластеры, выделенные для файла файловой системой) сообщает фактический размер файла, включая все потоки.

Проводник Windows не сообщает об ADS, ни о команде CMD директор . Однако ADS видны с помощью:

  • Powershell Get-Item -Stream (Windows)
  • CMD каталог /r (Windows)
  • потока (Microsoft/SysInternals)
  • пацаны (Хейсофт)
  • Альтернативный StreamView (NirSoft)

Обратите внимание, что по-прежнему можно скрыть ADS от некоторых из этих инструментов с помощью зарезервированных ключевых слов файловой системы (см. документ Пирса, ссылка на который приведена ниже).

Подробное описание ADS, которое стоит прочитать:

  • Шона Пирса
  • Марк Оксенмайер

Использование ADS вредоносным ПО

Серьезные средства защиты от вредоносного ПО следят за ADS, но вредоносное ПО по-прежнему использует ADS в больших масштабах, потому что: .

  • Легко перенаправить выполнение законного файла в ADS (например, с помощью ярлыка).
  • BitPaymer

    Вымогатель BitPaymer входит в компьютер как обычный и видимый файл, но при запуске копирует себя в законный файл как ADS, затем удаляет исходный файл. Поскольку это не меняет размер законного файла, а ADS не отображаются в списке обычных инструментов, вредоносное ПО теперь практически скрыто.

    Операция Cobalt Kitty

    Также скрывается с помощью ADS.

    Моя точка зрения такова: если наблюдается большая разница в размере файла (более размера кластера: 4 КБ), не упускайте из виду возможность ADS и скрытого вредоносного ПО.

    Поэкспериментируйте с ADS самостоятельно

    Чтобы безопасно поэкспериментировать с ADS, попробуйте это на уровне DOS/CMD…

    Создать и затем отобразить содержимое файла в корне C:

     C:\> echo Основные данные поток> test.txt
    C:\> введите test.txt
     

    Результат:

     C:\> Основной поток данных
     

    Теперь добавьте ADS тем же методом, просто укажите имя ADS в дополнение к имени файла:

     C:\> echo Секретное сообщение> test.