Формат refs что это

Подробности о файловой системе ReFS (Protogon)

В блоге разработчиков Windows 8 опубликована большая статья с описанием архитектуры новой файловой системы ReFS (Resilient File System), ранее известной под кодовым названием Protogon, которая разрабатывается для Windows Server 8, а в будущем она будет доработана и начнёт устанавливаться также на клиентских машинах Windows. Прошлая файловая система NTFS в версии 1.2 была представлена в далёком 1993 году как часть Windows NT 3.1, а к появлению Windows XP в 2001 году NTFS доросла до версии 3.1, и только тогда её начали ставить на клиентские машины. Примерно такой же путь развития ожидает ReFS.

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

Ведущий программист и менеджер подразделения Windows Storage and File System Сурендра Верма (Surendra Verma) объясняет, что ReFS будет основана на NTFS и сохранит совместимость по ключевым направлениям, но в то же время это будет совершенно другая архитектура. Некоторые фичи и семантики NTFS будут ликвидированы, в том числе поддержка коротких имён, ID объектов, компрессия, шифрование на уровне файлов (EFS), дисковые лимиты (квоты), потоки данных, транзакции, разрежённые файлы, расширенные атрибуты и жёсткие ссылки.

Формат refs что это. Смотреть фото Формат refs что это. Смотреть картинку Формат refs что это. Картинка про Формат refs что это. Фото Формат refs что это
Структура данных ReFS реализована в виде B+ деревьев

Ключевые цели ReFS

Ключевые функции ReFS

Конечно же, данные с ReFS будут доступны для клиентов через те же APIs, которые используются сегодня во всех операционных системах для доступа к разделам NTFS.

Источник

Строение файловой системы ReFS и алгоритм восстановления данных

«ReFS» (Resilient File System) – это новая файловая система от Microsoft, которая создавалась как замена «NTFS». У нее есть несколько солидных преимуществ, а именно, разработчики исправили все ошибки «NTFS». Она гораздо больше защищена от повреждения информации, она лучше переносит возросшую нагрузку, а также масштабируется гораздо проще.

Формат refs что это. Смотреть фото Формат refs что это. Смотреть картинку Формат refs что это. Картинка про Формат refs что это. Фото Формат refs что это

Особенности «ReFS»

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

«ReFS» обеспечивает более высокую надежность сохранения информации, по сравнению со старой ФС. Для хранения файлов и метаданных используются «B+-деревья». Размеры, количество разделов и файлов теперь ограничены максимальным 64-битным значением. Пустое пространство хранится в трех разных таблицах, разбитых по объемам фрагментов (малых, средних, больших). Названия файлов и пути пишуться в «Unicode», они не должны превышать 32 килобайта, то есть название файла можно указывать в 30 тысяч знаков.

Защита от отключения питания. Допустим вы прописываете новое имя файла (или другие метаданные), пропало электричество и вы не успели их сохранить. В «NTFS» — файл будет поврежден, так как вы меняете метаданные напрямую. Но «ReFS» всего лишь делает копию метаданных, и не меняет основные пока не произойдет сохранение, особенность работы функции «Copy-on-write».

Технология «Storage Spaces» — это функция виртуализации носителей. Она позволяет создать единое пространство из нескольких физических дисков на одном ПК или нескольких по локальной сети. Также есть возможность настроить «зеркалирование» как RAID массивах.

Отличия от NTFS

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

Еще, в ней отсутствуют функции шифрования, сжатия, дедупликации, дисковые квоты, жесткие ссылки и расширенные атрибуты. Некоторые из них заменены на новые, например, «ReFS» полностью поддерживает шифрование «BitLocker».

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

ОС Windows Server 2016 позволит отформатировать обычные тома в «ReFS», но не позволит отформатировать загрузочный диск, потому что загрузочный сектор должен быть на «NTFS» разделе.

Архитектура файловой системы

Структур ReFS значительно отличается от всех остальных файловых систем для Windows. Главными структурными элементами выступают «B+ деревья». Они бывают одноуровневыми (как листья) и многоуровневыми (как деревья). Это обуславливает хорошее масштабирование, для каждого элемента, входящего в структуру ФС. Эта схема, а также 64-битная адресация каждого элемента, делают невозможным проблемы при ее дальнейшем увеличении.

Формат refs что это. Смотреть фото Формат refs что это. Смотреть картинку Формат refs что это. Картинка про Формат refs что это. Фото Формат refs что это

Как корневая запись B+дерева, остальные записи имеют такой же объем в 16 кб, для блока метаданных. Размер в 60 байт — выделен для промежуточных (адресных) узлов. Следовательно, для правильного описания масштабных структур хранения потребуется малое количество уровней. Это позволило увеличить производительность ФС, по сравнению с другими.

Структура файловой системы ReFS

«ReFS» можно определить по специфической сигнатуре, которая расположена в начале раздела:

0x4000 байт — длина всех страниц ReFS.

Формат refs что это. Смотреть фото Формат refs что это. Смотреть картинку Формат refs что это. Картинка про Формат refs что это. Фото Формат refs что это

Номер первой страницы — 0x1e, то есть 0x78000 байт которые идут сразу за загрузочным разделом. Это стандартное отображение Microsoft, которое информирует, что первые метаданные нужно искать после фиксированного смещения.

Алгоритм поиска удаленных данных

Утилиты для восстановления данных выполнят полное сканирование дискового пространства, отформатированного под «ReFS», используя алгоритм анализа по сигнатурам. Проверяя диск блок за блоком, они обнаружат готовые последовательности данных, определят их и выведут результаты. Так как API для работы с дисками для «ReFS» и «NTFS» одинаковы, то и процессы восстановления данных предельно схожи.

Сначала определяется «Volume Header», в нем записано количество секторов на кластер и какой объем сектора. Основная версия лежит в нулевом секторе, а копия расположена в последнем. Далее считывается «Superblock», он расположен в 30-ом блоке и также есть 2 копии во втором и третьем блоке в конце. Из него, извлекается ссылки на «чекпоинт» и его копию, определяется его последняя актуальная версия по «Virtual Allocated Clock».

Checkpoint содержит информацию об основных таблицах, далее считываются заголовки «Page Header» и блоки с указателями (Pointers) на полный список таблиц. Потом ищется «Container Table» для получения физических адресов из виртуальных, и выполняется поиск по «Object ID Table» — все таблицы найдены.

Утилиты доходят до нулевых уровней — то есть «листов b-дерева», и считывают данные файлов. Так как поиск ведется постранично, то если есть сбои — эти элементы просто исключаются из анализа, а сам процесс сканирования идет дальше. Таким образом утилиты для восстановления данных находят всю информацию, которую возможно «достать» с диска.

Полную версию статьи со всеми дополнительными видео уроками смотрите в источнике.

Источник

Для чего нужна файловая система ReFS – преимущества над NTFS и другими

Формат refs что это. Смотреть фото Формат refs что это. Смотреть картинку Формат refs что это. Картинка про Формат refs что это. Фото Формат refs что это

Новая файловая система Microsoft ReFS была первоначально представлена на Windows Server 2012. Она включена в Windows 10, где её можно использовать только как часть функции Storage Spaces для пула дисков. ReFS усовершенствована для Windows Server 2016 и является частью Windows 10 Pro для рабочих станций.

Что такое ReFS

Аббревиатура от «Resilient File System», ReFS – это новая файловая система, созданная с использованием кода текущей файловой системы NTFS. На данный момент ReFS – это не просто замена NTFS. Она имеет свои преимущества и недостатки. У Вас не получиться просто использовать ReFS вместо NTFS на вашем системном диске.

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

ReFS защищает от повреждения данных

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

ReFS интегрирован с функцией Storage Spaces. Если вы настроили зеркальное хранилище с помощью ReFS, Windows может легко обнаружить повреждение файловой системы и автоматически устранить проблемы, скопировав альтернативную копию данных на другом диске. Эта функция доступна как для Windows 10, так и для Windows 8.1.

Формат refs что это. Смотреть фото Формат refs что это. Смотреть картинку Формат refs что это. Картинка про Формат refs что это. Фото Формат refs что это

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

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

Новая файловая система также устойчива к повреждению данных другими способами. Например, когда вы обновляете метаданные файла – например, название файла – файловая система NTFS будет напрямую изменять метаданные файла. Если ваш компьютер выйдет из строя или отключится питание во время этого процесса, может произойти повреждение данных. Когда вы обновляете метаданные файла, файловая система ReFS создаст новую копию метаданных. ReFS присвоит файлу новые метаданные только после записи новых метаданных. Нет опасности, что метаданные файла будут повреждены. Это называется «копирование на запись». Copy-on-write также доступен для других современных файловых систем, таких как ZFS и BtrFS для Linux, а также для файловой системы Apple – APFS.

ReFS устраняет некоторые ограничения NTFS

ReFS более современна, чем NTFS, и поддерживает гораздо большие объемы и более длинные имена файлов. В долгосрочной перспективе – это важные улучшения.

В файловой системе NTFS путь к файлу ограничен 255 символами. С ReFS имя файла может содержать до 32768 символов. Windows 10 позволяет отключить это ограничение для символов в файловой системе NTFS, но она всегда отключена на томах ReFS.

ReFS отказалась от имён файлов в формате DOS 8.3. На томе NTFS вы можете получить доступ к C:\Program Files\ через C:\PROGRA

1\ для обеспечения совместимости со старым программным обеспечением. Эти устаревшие имена файлов удалены из ReFS.

NTFS имеет теоретический максимальный объем в 16 эксабайт, а у ReFS теоретический максимальный объем – 262144 экзабайт. Сейчас это не имеет большого значения. но в один прекрасный день.

ReFS может быть быстрее, иногда

ReFS не просто предназначена для повышения производительности по сравнению с NTFS. Вместо этого Microsoft фокусируется на нескольких важных направлениях оптимизации, которые делают ReFS намного эффективнее в некоторых случаях.

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

В Windows Server 2016 Microsoft улучшила ReFS, чтобы обеспечить лучшую производительность с помощью определенных функций виртуальной машины. Microsoft Hyper-V использует эти преимущества (теоретически, другое программное обеспечение для виртуальных машин могло бы поддерживать их, если захочет).

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

ReFS также предлагает новую функцию «sparse VDL», которая позволяет ReFS быстро записывать нули в большой файл. Это значительно ускоряет создание нового, пустого файла виртуального жесткого диска фиксированного размера (VHD). В NTFS это может занять 10 минут, а ReFS сделает тоже самое за несколько секунд.

ReFS не может заменить NTFS

Все эти функции звучат неплохо, но вы не можете просто переключиться на ReFS из NTFS. Windows не может загружаться из файловой системы ReFS и требует NTFS.

ReFS также исключает другие функции, доступные в NTFS, включая сжатие и шифрование файловой системы, жесткие ссылки, расширенные атрибуты, дедупликацию данных и дисковые квоты. Тем не менее, ReFS совместима с различными функциями. Например, если вы не можете выполнять шифрование определенных данных на уровне файловой системы, ReFS будет совместима с полным типом шифрования BitLocker.

Windows 10 не позволит вам форматировать любой старый раздел как ReFS. В настоящее время вы можете использовать ReFS только для пространства хранения, где её функции помогают защитить данные от повреждений. В Windows Server 2016 вы можете форматировать тома с помощью ReFS вместо NTFS. Возможно, вы захотите сделать это для тома, на котором планируете хранить виртуальные машины. Однако, вы по-прежнему не сможете использовать ReFS для загрузочного тома. Windows может загружаться только с диска NTFS.

Формат refs что это. Смотреть фото Формат refs что это. Смотреть картинку Формат refs что это. Картинка про Формат refs что это. Фото Формат refs что это

Непонятно, какое будущее ждёт ReFS. Возможно, Microsoft в один прекрасный день улучшит её, пока она не сможет полностью заменить NTFS во всех версиях Windows. Неясно, когда это может произойти. Но, на данный момент ReFS может использоваться только для конкретных задач.

Как использовать ReFS

На обычном ПК с Windows 10 вы можете использовать ReFS только через функцию «Управление дисковыми пространствами». Обязательно отформатируйте свои пространства хранения как ReFS, а не NTFS, когда будете выбирать параметр файловой системы. Вы сможете автоматически использовать функции целостности данных в файловой системе ReFS, если её выберете.

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

Источник

Обзор файловой системы ReFS

Область применения: Windows Server 2022, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, Windows Server 2012

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

Основные преимущества

Устойчивость

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

Производительность

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

Четность с зеркальным ускорением. Четность с зеркальным ускорением обеспечивает высокую производительность и эффективное хранение данных.

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

Уровень производительностиУровень емкости
Зеркальный SSDЗеркальный жесткий диск
Зеркальный SSDSSD с контролем четности
Зеркальный SSDЖесткий диск с контролем четности

После настройки этих уровней ReFS использует их для предоставления быстрого хранилища для оперативных данных и эффективного хранения для холодного объема данных:

при развертывании Windows Server контроль четности с зеркальным отображением поддерживается только в дисковые пространства Direct. Мы советуем использовать четность с ускорением зеркального отображения только с рабочими нагрузками архивации и резервного копирования. Для виртуализированных и других высокопроизводительных произвольных рабочих нагрузок рекомендуется использовать трехстороннее зеркала для повышения производительности.

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

Переменный размер кластера — ReFS поддерживает размер кластера 4 КБ и 64 КБ. Рекомендуемый для большинства развертываний размер кластера — 4 КБ, а кластеры размером 64 КБ подходят для работы с крупными, последовательными рабочими нагрузками ввода-вывода.

Масштабируемость

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

Поддерживаемые развертывания

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

все поддерживаемые конфигурации ReFS должны использовать сертифицированное оборудование Windows Server Catalog и удовлетворять требованиям приложений.

Дисковые пространства прямого подключения

развертывание ReFS на дисковые пространства Direct рекомендуется для виртуализованных рабочих нагрузок или хранилища, подключенного к сети:

Дисковые пространства

Развертывание ReFS в дисковых пространствах с общими полками SAS подходит для размещения архивных данных и хранения документов пользователей.

дисковые пространства поддерживает локальные несъемные диски с прямым подключением через бустипес SATA, SAS, NVME или подключенные через HBA (также известный как RAID-контроллер в сквозном режиме).

Базовые диски

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

К базовым дискам относятся локальные несъемные диски с прямым подключением через Бустипес SATA, SAS, NVME или RAID. базовые диски не включают дисковые пространства.

Цель резервного копирования

Развертывание ReFS в качестве целевого объекта резервного копирования лучше всего подходит для приложений и оборудования, которые реализуют собственные решения для обеспечения устойчивости и доступности.

Целевые объекты резервного копирования включают указанные выше поддерживаемые конфигурации. Свяжитесь с поставщиками массивов приложений и хранилища для получения сведений о поддержке по оптоволоконному каналу и сетям хранения данных iSCSI. Для сетей SAN, если требуются такие функции, как тонкая подготовка, обрезка, отмена СОПОСТАВЛЕНИЯ или Передача данных (ODX), необходимо использовать NTFS.

Сравнение возможностей

Ограничения

КомпонентReFSNTFS
Максимальная длина имени файла255 символов Юникода255 символов Юникода
Максимальная длина имени пути32 КБ символов Юникода32 КБ символов Юникода
Максимальный размер файла35 PB (петабайтов)256 ТБ
Максимальный размер тома35 ПБ256 ТБ

функциональное назначение;

В ReFS и NTFS доступны следующие функции:

доступно на Windows server версии 1709 и более поздних версий, Windows Server 2019 (1809) LTSC или более поздней версии.

доступно в Windows Server 2012 R2 и более поздних версиях.

в CSV не будут использоваться прямые операции ввода-вывода с дисковые пространства, дисковые пространства Direct (S2D) или SAN.

Источник

Строение файловой системы ReFS и алгоритм восстановления данных

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

Формат refs что это. Смотреть фото Формат refs что это. Смотреть картинку Формат refs что это. Картинка про Формат refs что это. Фото Формат refs что это

Введение

Файловая система «ReFS» является дальнейшим развитием «NTFS». поддерживает точки повторной обработки (reparse points) — технологию, которая ранее содержалась только в файловой системе «NTFS». Через точки повторной обработки реализована поддержка символьных ссылок и точек монтирования в Windows.

Основные функции:

В дополнение, «ReFS» унаследует многие функции и семантики «NTFS», включая шифрование «BitLocker», списки контроля доступа «ACL», журнал «USN», уведомления об изменениях, символьные ссылки, точки соединения «junction points», точки монтирования «mount points», точки повторной обработки «reparse points», снимки тома, «ID» файлов и «oplock».

Конечно же, данные с «ReFS» будут доступны для клиентов через те же «API», которые используются сегодня во всех операционных системах для доступа к разделам «NTFS».

Особенности

Особенности файловой системы «ReFS»:

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

При обнаружении поврежденных данных, которые не имеют альтернативной копии для восстановления, такие данные сразу же будут удалены с диска. Перезагрузка или отключение устройства в таком случае не потребуется, как в случае с «NTFS».

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

Более высокая надежность хранения данных. Для метаданных и содержимого файлов «ReFS» использует B±деревья. Размеры файлов, томов, количество файлов в каталоге ограничены 64-битным числом. А свободное место на диске описывается 3 отдельными иерархическими таблицами для малых, средних и больших фрагментов свободного пространства. Имена файлов и длина пути ограничена 32 кибибайтами, для хранения которых используется «Unicode».

Новая файловая система также устойчива к повреждению данных другими способами. Например, когда вы обновляете метаданные файла — например, название файла — файловая система «NTFS» будет напрямую изменять метаданные файла. Если ваш компьютер выйдет из строя или отключится питание во время этого процесса, может произойти повреждение данных. Когда вы обновляете метаданные файла, файловая система ReFS создаст новую копию метаданных. И присвоит файлу обновленные метаданные только после того как будут записаны полностью все новые. Нет опасности, что метаданные файла будут повреждены. Это называется копирование на запись «Copy-on-write».

«ReFS» интегрируется с технологией виртуализации носителей данных «Storage Spaces», которая позволяет применять зеркалирование и объединять несколько физических носителей одного ПК или нескольких по сети.

Система не поддерживает именованные потоки файлов, короткие имена, сжатие и шифрование на уровне файлов «Encrypting File System», а также транзакции «NTFS», жёсткие ссылки, «extended attributes», и дисковые квоты.

Отличия от NTFS

«ReFS» более современна, чем «NTFS», и поддерживает гораздо большие объемы и более длинные имена файлов. В долгосрочной перспективе — это важные улучшения.

В файловой системе «NTFS» путь к файлу ограничен 255 символами. С «ReFS» имя файла может содержать более 30 тис. символов (32768).

«NTFS» имеет теоретический максимальный объем в 16 эксабайт, а у «ReFS» теоретический максимальный объем — более двухсот тысяч (262144) экзабайт. Сейчас это большого значения не имеет и рассчитано на будущее.

В «ReFS» отсутствуют некоторые функции доступные в «NTFS», включая сжатие и шифрование файловой системы, жесткие ссылки, расширенные атрибуты, дедупликацию данных и дисковые квоты. Тем не менее, «ReFS» совместима с различными функциями. Например, если вы не можете выполнять шифрование определенных данных на уровне файловой системы, «ReFS» будет совместима с полным типом шифрования «BitLocker».

Windows 10 не позволит вам форматировать любой старый раздел как «ReFS». В настоящее время можно использовать «ReFS» только для пространства хранения, где её функции помогают защитить данные от повреждений. В Windows Server 2016 можно форматировать тома с помощью «ReFS» вместо «NTFS». Использовать «ReFS» для загрузочного тома нельзя потому как Windows может загружаться только с диска «NTFS».

На данный момент этот тип файловой системы используется только на серверных версиях Windows и в версии Windows Enterprise (LTSC).

Архитектура файловой системы

Несмотря на частые упоминания о схожести «ReFS» и «NTFS» на высоком уровне, речь идет всего лишь о совместимости некоторых структур метаданных. Дисковая реализация структуры ReFS кардинально отличается от других файловых систем Microsoft.

Основными структурными элементами этой файловой системы являются B+ деревья. Все элементы структуры файловой системы могут быть одноуровневыми (листья) или многоуровневыми (деревья). Такой подход позволяет масштабировать практически любой элемент файловой системы. Наряду с реальной 64-битной адресацией всех элементов системы это исключает появление «узких мест» при ее дальнейшем масштабировании. Формат refs что это. Смотреть фото Формат refs что это. Смотреть картинку Формат refs что это. Картинка про Формат refs что это. Фото Формат refs что это

В дополнение к корневой записи B+дерева все другие записи имеют размер блока метаданных — 16 КБ. Промежуточные (адресные) узлы имеют небольшой размер около 60 байт. Поэтому обычно для описания даже очень больших структур требуется небольшое количество уровней дерева. Такой подход увеличивает общую производительность системы.

Основным структурным элементом файловой системы является «Каталог», представленный в виде B+ дерева с ключом в виде номера объекта папки. В отличие от других подобных файловых систем, файл в «ReFS» не является отдельным ключевым элементом «Каталога», а существует только как запись. Возможно, из-за этой архитектурной особенности «ReFS» не поддерживает «жесткие ссылки».

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

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

Файлы на диске располагаются блоками по 64 КБ. Адресуются точно так же, как блоки метаданных в кластерах по 16 КБ. «Резидентность» файловых данных в «ReFS» не поддерживается, поэтому файл размером 1 байт на диске займет весь блок размером 64 КБ, что приводит к значительной избыточности хранения для небольших файлов. С другой стороны, это упрощает управление свободным пространством, и процесс распределения под новые файлы выполняется намного быстрее.

Размер метаданных пустой файловой системы составляет около 0,1% от размера самой файловой системы (т. Е. Около 2 ГБ на томе 2 ТБ). Некоторые базовые метаданные дублируются что повышает устойчивость от сбоев.

Структура файловой системы ReFS

Файловую систему «ReFS» можно определить по следующей сигнатуре в самом начале раздела:

46 53 52 53 XX XX XX XX XX XX XX XX XX XX XX XX FSRS

Страницы ReFS имеют длину 0×4000 байт. Формат refs что это. Смотреть фото Формат refs что это. Смотреть картинку Формат refs что это. Картинка про Формат refs что это. Фото Формат refs что это

Во всех проверенных системах номер первой страницы равен 0×1e (0×78000 байт после загрузочного раздела, содержащего файловую систему). Это встроенная документация Microsoft, в которой указано, что первый каталог метаданных находится по фиксированному смещению на диске.

Другие страницы содержат различные структуры и таблицы системы, каталогов и томов, а также «журналируемые» версии каждой страницы.

Первый байт каждой страницы — это ее номер.

Первые 0×30 байтов каждой страницы метаданных это Заголовок страницы, который имеют следующий вид:

byte 0: XX XX 00 00 00 00 00 00 YY 00 00 00 00 00 00 00

byte 16: 00 00 00 00 00 00 00 00 ZZ ZZ 00 00 00 00 00 00

byte 32: 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

dword 0 (XX XX) — номер страницы, который является последовательным и соответствует смещению страницы 0×4000;

dword 2 (YY) — номер журнала или порядковый номер;

dword 6 (ZZ ZZ) — это «виртуальный номер страницы», который не является последовательным

Таблица объекта «Object Table», виртуальный номер страницы 0×02 — связывает идентификаторы объектов со страницами, на которых они расположены. Здесь мы видим «AttributeList», состоящий из записей «Key / Value pairs».

По которым можно найти «ID» объекта корневого каталога и получить страницу, на которой он находится: Формат refs что это. Смотреть фото Формат refs что это. Смотреть картинку Формат refs что это. Картинка про Формат refs что это. Фото Формат refs что это

Запись таблицы объектов для корневого каталога, содержащая его страницу (0xAF4)

При получении страниц по ID или виртуальному номеру, ищите те, у которых наивысший порядковый номер, поскольку это последние копии механизма «shadow-write».

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

Список зачастую имеет префикс атрибута заголовка, определяющего общую длину следующих атрибутов, которые составляют этот список.

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

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

Структуры в списке каталогов имеют один из следующих форматов:

Базовый атрибут (Base Attribute)

Самый простой базовый атрибут, состоит из блока, длина которого указана в самом начале.

Ниже приведен пример типичного атрибута: Формат refs что это. Смотреть фото Формат refs что это. Смотреть картинку Формат refs что это. Картинка про Формат refs что это. Фото Формат refs что это

Здесь раздел длиной 0xA8, содержит четыре метки времени файла. Подробнее это можно увидеть ниже: Формат refs что это. Смотреть фото Формат refs что это. Смотреть картинку Формат refs что это. Картинка про Формат refs что это. Фото Формат refs что это

Записи

«Key / Value pairs» — их значения указаны в первых 0×20 байтах атрибута. Они используются для связанных разделов метаданных с файлами, имена которых записываются в ключах, а содержимое — в значение.

Ниже приводится пример типичной Записи: Формат refs что это. Смотреть фото Формат refs что это. Смотреть картинку Формат refs что это. Картинка про Формат refs что это. Фото Формат refs что это

Запись заканчивается после значения, 0×410 байтов с начала и после значения 0×30 или 0×440 (что совпадает с общей длиной).

Запись соответствует файлу, созданному на диске.

Здесь первым атрибутом в значении записи является простой атрибут, который обсуждался выше, содержащий временные метки файла. Затем следует «File Reference Attribute List Header».

По меткам мы ищем записи со значениями «w/ flag» ‘0’ или ‘8’. Часто встречаются ‘4’ что указывает на Историческую Запись или Запись, которая с была изменена.

Поскольку записи имеют префикс их общей длины, их можно рассматривать как подкласс «Attribute».

«AttributeList» (заголовок списка) — содержит блок атрибутов.

На первый взгляд это простые атрибуты длиной 0×20, но при дальнейшем рассмотрении мы можем видеть, что он содержит длину большого блока атрибутов. После анализа «AttributeList», осталось прочитать оставшиеся заполнение байты в списке, прежде чем перейти к следующему атрибуту. Формат refs что это. Смотреть фото Формат refs что это. Смотреть картинку Формат refs что это. Картинка про Формат refs что это. Фото Формат refs что это

Directory Tree Branches (Ветви дерева каталогов)

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

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

SubDirectories

«SubDirectories» — это записи в списке атрибутов каталога, ключ которых содержит флаг метаданных каталога (0×20030), а также имя подкаталога.

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

Типичный подкаталог «Record»: Формат refs что это. Смотреть фото Формат refs что это. Смотреть картинку Формат refs что это. Картинка про Формат refs что это. Фото Формат refs что это

Подобные каталоги — это записи, ключ которых содержит флаг (0×10030), за которым следует имя файла.

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

Значение «File Record» состоит из нескольких атрибутов, хотя они появляются только один за другим, без заголовка списка. Мы по-прежнему можем анализировать их последовательно, учитывая, что все атрибуты имеют индивидуальный префикс с их длиной, а длина значения записи файла дает нам общий размер блока.

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

Второй атрибут, является заголовком списка атрибутов, содержащего «Ссылку на файл».

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

Несмотря на сложность, каждый уровень может быть проанализирован таким же образом, как и все другие атрибуты и записи, просто нужно разобрать атрибуты и правильно определить их уровни и структуру.

Что касается фактических значений, длина файла всегда видна с фиксированным смещением в пределах его атрибута (0×3c) и указатель содержимого, находится во втором значении «qword» файла записи. Этот указатель представляет собой простую ссылку на страницу, содержимое файла которой можно прочитать дословно. Формат refs что это. Смотреть фото Формат refs что это. Смотреть картинку Формат refs что это. Картинка про Формат refs что это. Фото Формат refs что это

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

Алгоритм поиска программы для восстановления данных Hetman Partition Recovery

Решением этой проблемы будет специальная утилита для быстрого восстановления данных.

Hetman Partition Recovery позволяет проанализировать дисковое пространство под управлением файловой системой «ReFS» с помощью алгоритма сигнатурного анализа. Анализируя устройство сектор за сектором, программа находит определенные последовательности байт и отображает их пользователю. Восстановление данных с дискового пространства «ReFS» не отличается от работы с файловой системой «NTFS».

При быстром анализе программа ищет заголовок тома «Volume Header», который находится в нулевом секторе, и его копия лежит в последнем секторе. В заголовке находиться нужная информация для дальнейшего анализа, а именно количество байт в секторе и количество секторов в кластере. Затем определив эти параметры находит «Superblock», который лежит в 30-ом блоке. Суперблок имеет 2 копии одна находиться в третьем блоке с конца, и вторая во втором блоке. Из суперблока программа определяет ссылки на чекпоинты, есть 2 чекпоинта, они находятся по указанным адресам, которые лежат в суперблоке. Перейдя по этим двум адресам, программа находит «Virtual Allocated Clock», по этому параметру определяется какой из чекпоинтов актуальный в данный момент. Как известно Windows изменяет сначала 1 чекпоинт и только при успешной записи дублирует информацию во второй.

В чекпоинте (Checkpoint) находится основные таблицы. Из него вычитывается заголовок страницы «Page Header» и затем блок с данными. По блоку с данными мы получаем поинтеры (Pointers) каждой из таблицы (ссылки на все основные таблицы).

Чтобы переводить виртуальные адреса в физические нужно найти «Container Table». И затем по виртуальному адресу идет поиск «Object ID Table» для того чтобы получить все таблицы.

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

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

Будущее новой файловой системы довольно туманно. Microsoft может доработать «ReFS» для замены, устаревшей «NTFS» во всех версиях Windows. На данный момент «ReFS» не может использоваться повсеместно и служит только для определенных задач.

Полную версию статьи со всеми дополнительными видео уроками читайте в нашем блоге.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *