Главная » Блоги Экспертов И ИТ-Компаний » Разреженные файлы в Windows, Linux и MacOS, файловых систем NTFS, REFS, Ext3, Ext4, BTRFS и APFS.
Восстановите данные жесткого или USB диска, карты памяти 7 лет назад
Возможность размещать посты на проекте остановлена

Редакция CNews готова принять пресс-релизы компаний на адрес news@cnews.ru.

Приглашаем вас делиться комментариями о материалах CNews на наших страницах платформ Facebook, Telegram и Twitter.

Разреженные файлы в Windows, Linux и MacOS, файловых систем NTFS, REFS, Ext3, Ext4, BTRFS и APFS.

В этой статье пойдет речь о разреженных файлах. Расскажем об их недостатках и достоинствах, какие файловые системы поддерживают такие файлы. А также, как создавать или преобразовать их из обычных.

sparse-files-in-windows-linux-and-macos-ntfs-refs-ext3-ext4-btrfs-and-apfs-file-systems.jpg

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

01-file-systems.jpg

Этот тип поддерживает большинство файловый систем: BTRFS, NILFS, ZFS, NTFS, ext2, ext3, ext4, XFS, JFS, ReiserFS, Reiser4, UFS, Rock Ridge, UDF, ReFS, APFS, F2FS.

Все эти ФС полностью поддерживают такой тип, но в тоже время не предоставляют прямой доступ к их функциям по средством своего стандартного интерфейса. Управлять их свойствами можно только через команды командной строки.

Разница между сжатием и разреженными файлами

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

Преимущества и недостатки

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

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

Еще один из недостатков — это то, что нельзя скопировать или создать такой файл, если его номинальный размер превышает доступный объем свободного пространства (или ограничения размера квоты, налагаемые на учетные записи пользователей). Например, если исходный размер (со всеми нулевыми байтами) составляет 500 МБ, а для учетной записи пользователя, используемой для его создания, существует предел квоты в 400 МБ. Это приведет к ошибке даже если фактическое дисковое пространство, занимаемое им, составляет всего 50 МБ на диске.

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

Создаем разреженный файл в Windows

Для этого в ОС Windows будем использовать командную строку. В поиске пишем cmd и запускаем ее от имени администратора.

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

fsutil file createnew sparse-file 1000000000

Где sparse-file – имя, а в конце указан его размер в байтах.

02-fsutil.jpg

Чтобы присвоить файлу значение «разреженный» вводим:

fsutil sparse setflag sparse-file

 

03-fsutil.jpg

Для удаления этого флага выполняется следующая команда:

fsutil sparse setflag sparse-file 0

 

04-fsutil.jpg

И чтобы снова присвоить атрибут:

fsutil sparse setflag sparse-file

Проверяем:

fsutil sparse queryflag sparse-file

 

05-fsutil.jpg

Сам по себе атрибут ещё не приводит к экономии дискового пространства. Для этого нужно разметить пустую область, которая будет освобождена внутри.

Для пометки пустой области введите:

fsutil sparse setrange sparse-file 0 1000000000

 

06-fsutil.jpg

В конце указывается смещение и длина, они задаются в байтах. В моем случае от нуля до 1Гб.

Для установки полностью разреженного файла указываем полный объем. Если нужно можно расширить файл указав здесь большее значение.

Для того чтобы убедиться, что файлу присвоен данный атрибут выполним layout

fsutil file layout sparse-file

 

07-fsutil.jpg

Такой Атрибут можно задать любому файлу. Просто выполнив эту команду с его именем и задать нужный вам размер.

В свойствах созданного ранее файла можно увидеть, что при размере в 1Гб. файл занимает на диске 0 байт.

Данный набор команд подходит для всех файловых систем Windows, которые поддерживают данный тип данных (NTFS, ReFS и т.д.).

Как создать разреженный файл в Linux

В Linux процесс создания таких типов данных немного проще, поскольку существует несколько команд для их создания. Этот набор подойдет для всех файловых систем Linux.

Здесь можно использовать команду dd, либо truncate.

Полную версию статьи со всеми дополнительными видео уроками смотрите в источнике. А также зайдите на наш Youtube канал, там собраны более 400 обучающих видео.


Данный материал является частной записью члена сообщества Club.CNews.
Редакция CNews не несет ответственности за его содержание.
1 год назад | категории: Система: Диски и файлы
Комментарии
Другие публикации
RU,
http://hetmanrecovery.com/ru/ , Руководитель
Информационные технологии

Компания Hetman Software занимается разработкой и продажей программ для восстановления данных. Огромный опыт позволяет нам разрабатывать наиболее эффективные решения в этой области.




Забыли пароль?

Редакция CNews готова принять пресс-релизы компаний на адрес news@cnews.ru.

Приглашаем вас делиться комментариями о материалах CNews на наших страницах платформ Facebook, Telegram и Twitter.