NTFS (аббревиатура от  — «файловая система новой технологии») — стандартная файловая система для семейства операционных систем Windows NT.

NTFS поддерживает хранение метаданных. С целью улучшения производительности, надёжности и эффективности использования дискового пространства для хранения информации о файлах в NTFS используются специализированные структуры данных. Информация о файлах хранится в главной файловой таблице — Master File Table (MFT). NTFS поддерживает разграничение доступа к данным для различных пользователей и групп пользователей (списки контроля доступа — , ACL), а также позволяет назначать (ограничения на максимальный объём дискового пространства, занимаемый файлами тех или иных пользователей). Для повышения надёжности файловой системы в NTFS используется система журналирования USN. Для NTFS размер кластера по умолчанию составляет от до в зависимости от размера тома и версии ОСРазмер кластера по умолчанию для FAT, NTFS и exFAT .. Дальнейшим развитием NTFS является ReFS.

История Файловая система NTFS заменила файловую систему FAT, использовавшуюся в ОС MS-DOS и ОС Windows.

Файловая система NTFS разработана на основе файловой системы HPFS. HPFS — аббревиатура от  — высокопроизводительная файловая система, разработку которой вела фирма Microsoft совместно с фирмой IBM для операционной системы OS/2. Впоследствии разработчики из фирмы Microsoft добавили в HPFS , журналируемость, разграничение доступа и аудит, назвали файловую систему NTFS. NTFS в значительной степени утратила присущую прародительнице (HPFS) весьма высокую производительность файловых операций.

Сравнение файловых систем NTFS, Files-11 и HPFS приведено в следующей таблице.

Параметр NTFS Files-11 HPFS Что используется для размещения файлов? Кластеры Кластеры Полосы по , разбитые на секторы Что используется для пометки кластеров, как занятых? По одной битовой карте для каждого тома По одной битовой карте для каждого тома По одной битовой карте секторов на каждую полосу Как хранится информация о файлах и каталогах? В пространстве MFT хранится информация и о файлах, и о каталогах Почти так же, как в NTFS, но аналогичный MFT каталог называется MFD Поддержка контроля доступа Реализуется с помощью набора прав доступа Реализуется почти так же, как в NTFS Контроль доступа не встроен в файловую систему. Поддержка этой возможности реализуется внешними процессами Поддержка потоков данных Для каждого файла можно создать ограниченное только ёмкостью тома множество именованных потоков. Имя потока записывается в виде «filename.ext: streamname» (имя файла с расширением, символ «:» (двоеточие), имя потока). Прямого аналога потоков нет, есть понятие версии файла. Версии именуются «filename.ext;version» аналогично синтаксису имён потоков в NTFS Потоки не поддерживаются. Имеется только для хранения расширенных атрибутов.

Версии NTFS Различают несколько версий NTFS. Номер версии драйвера файловой системы (NTFS.sys) не стоит в зависимости от версии самой файловой системы.

Версия NTFS Поддерживаемые версии Windows Дата выпуска Примечания 1.0 Windows NT 3.1 1993 1.1 Windows NT 3.5 1994 1.2 Windows NT 3.51 1996 Встречается название в версии драйвера — «NTFS 4.0» 2.x — — Нет официальных данных о выпуске NTFS данной версии 3.0 Windows 2000 2000 Встречаются названия «NTFS V5.0» и «NTFS 5». В этой версии появились , шифрование файлов и папок, разрежение файлов, , обновлён порядковый номер журналирования (USN), добавлен каталог $Extend и его файлы, внесены изменения в организацию дескрипторов безопасности (для разных файлов одинаковые настройки безопасности могут описываться одним дескриптором). 3.1 Windows XP, Windows Server 2003, Windows Server 2003 R2, Windows Vista, Windows 7, Windows Server 2008, Windows Server 2008 R2, Windows 8, Windows Server 2012 RTM Windows 8.1 Windows 10Windows Server 2016Windows Server 2019 Windows 11 октябрь 2001 Вышла осенью 2001 года с выпуском Windows XP. Встречается название «NTFS V5.1». Добавлено сохранение резервной копии MFT.

Поддержка операционными системами Спецификации файловой системы NTFS закрыты. Это создаёт определённые трудности при реализации её поддержки в продуктах, не принадлежащих фирме Microsoft, например, разработчикам драйверов для свободных операционных систем приходится заниматься обратной разработкой файловой системы NTFS.

В данный момент полноценная поддержка NTFS присутствует только в ОС семейства Windows NT от фирмы Microsoft. Существующие средства доступа к разделам NTFS для других ОС перечислены ниже.

MS-DOS Драйвер «NTFSDOS» от Марка Руссиновича (). Стандартная версия поддерживает чтение разделов NTFS. Версия «Professional» поддерживает запись на разделы NTFS. С июля 2006 года права на утилиты Марка Руссиновича принадлежат фирме Microsoft. На сайте фирмы Microsoft информации об этом продукте нет, но её без труда можно найти в сети.

Windows 9x Драйвер «NTFS for Windows 98» от Марка Руссиновича. Поддерживает чтение с разделов NTFS. Для записи можно использовать драйвер DOS. На сайте фирмы Microsoft информация об этом драйвере отсутствует, но его легко можно отыскать на сторонних сайтах. Драйвер «NTFS for Windows 98 » от фирмы Paragon Software Group. В настоящий момент поддерживает как чтение, так и запись. Версия бесплатна для некоммерческого использования.

Linux Проект «Linux-NTFS ». Включает модуль ядра и набор утилит для выполнения различных операций с файловой системой NTFS (проверка целостности, восстановление удалённых файлов, изменение размера и др.). Именно этот драйвер включается в ядро Linux ещё с версии 2.2 (с тех пор он был практически полностью переписан). Модулем ядра поддерживается практически только чтение; запись возможна лишь в существующие файлы без изменения их размера. Недавно в рамках проекта появилась утилита ntfsmount, использующая FUSE и позволяющая монтировать разделы NTFS с возможностью записи (с некоторыми ограничениями). Это был первый полностью свободный продукт, имеющий такую возможность. Проект «NTFS-3G». Возник как ответвление от проекта «Linux-NTFS ». Отличается более полной поддержкой записи на разделы NTFS. 21 февраля 2007 года была выпущена версия 1.0, названная стабильной. Обеспечивает высокий уровень надёжности и производительности. В настоящее время проект активно развивается. Проект «Captive NTFS» ( ). Создавался как «обёртка» для использования оригинального драйвера из ОС Windows NT в ОС Linux. Запись поддерживается, но драйвер работает крайне медленно и имеет некоторые технические ограничения. На официальном сайте проекта помещено объявление о прекращении разработки. Драйвер «NTFS for Linux » от фирмы Paragon Software. Драйвер поддерживает чтение и запись с NTFS. Кроме драйвера проект поставляет ряд утилит для создания файловой системы NTFS и выполнения некоторых операций с разделами NTFS. Доступен бесплатно для домашних пользователей.

OpenSolaris/Solaris Проект «NTFS File System Reader». Поддерживает чтение с NTFS. Проект «NTFS-3G». Необходимо установить дополнительные пакетыHow to mount NTFS and FAT32 partitions in OpenSolaris 2008.11 .

BeOS-совместимые операционные системы Для операционных систем BeOS, Zeta и Haiku существуют следующие проекты.

Системный драйвер. Поддерживает только чтение с NTFS. Экспериментальный драйвер . Поддерживает чтение и запись с NTFS.

KolibriOS Драйвер, поставляемый в составе ОС KolibriOS начиная с версии 0.6.5, написан на языке ассемблера, поддерживает чтение с разделов NTFS и запуска программ.

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

macOS В операционной системе macOS встроенный драйвер NTFS по умолчанию работает в режиме чтения. После выпуска версии Mac OS X 10.6 Snow Leopard была найдена возможность включения поддержки записи на NTFSВключение поддержки чтения и записи NTFS стандартными средствами: в ОС «Mac OS X 10.6 Snow Leopard» ; в ОС «Mac OS X 10.7 Lion» .. Драйвер «NTFS for Mac® OS X » от фирмы Paragon Software. Драйвер «NTFS-3G». Драйвер «MacFUSE» версии 2.0 .

Сравнение файловых систем FAT и NTFS + Ограничения / возможностиNTFSFAT16 и FAT32 Размеры диска в теории ( или ) на практике 255 ТБ старые версии, 8 ПБ более новые приблизительно () Размер тома теоретически — 264 — 1 кластер; разметка диска в стиле MBR позволяет создавать разделы, размеры которых не превышают ; чтобы обойти это ограничение, необходимо использование динамических дисков или разметки GPT (используя GPT, можно создать разделы диска размером до (); выбор стиля разметки предоставляется при инициализации (первоначальной разметке) диска, начиная с версии Windows Server 2003 SP1, Windows XP x64 Edition, Windows Server 2003 x64 Edition и все версии NT выше 6.0практически — 255 тб: 232 (максимальное количество адресуемых кластеров) * 64кб (максимальный размер кластера).

При попытке создать том большего размера, том создаётся, но при форматировании в NTFS с размером кластера 64 кб выдаётся ошибка: The number of clusters exceeds 32 bits (Количество кластеров превышает 32 бита).

минимальный размер тома: минимальный рекомендуемый размер тома: запись в таблице FAT на томе с файловой системой FAT32 имеет размер , поэтому средство ScanDisk не может работать с таблицей FAT на диске FAT32, описывающей более (включая два резервных). С учётом самих таблиц FAT и при максимальном размере кластера размер тома может быть до . В ОС Windows 2000 нельзя отформатировать том размером более с файловой системой FAT32. Драйвер FastFAT для ОС Windows 2000 поддерживает монтирование томов, размер которых превышает , с файловой системой FAT32 (с определёнными ограничениями), но такой том нельзя создать с помощью утилиты format Форматирование дискет Windows не позволяет форматировать дискеты в NTFS. Существует утилита ntfsflp от Марка Руссиновича; утилита побайтово записывает на дискету готовый бинарный образ тома NTFS; размер тома совпадает с размером дискетыЗа счёт отсутствия журналирования в FAT32 уменьшается износ блоков флеш-накопителя для модулей памяти, изготовленных по flash-технологиям, что позволяет продлить их срок службы. поддержка ссылок разных типов NTFS поддерживает жёсткие () и символьные ссылки, соединения для каталогов (), FAT не поддерживает ссылки Максимальный размер файла теоретически — минус практически — минус (~ или ~) FAT16 поддерживает файлы размером не более 2 Гигабайт FAT32 поддерживает файлы размером не более 4 Гигабайт Средства безопасности атрибуты файлов, авторизация с использованием DACL, шифрование с использованием EFS атрибуты файлов Аудит с использованием SACL не поддерживается Поддержка сжатия на уровне файловой системы для файлов, каталогов и дисков; не комбинируется с шифрованием, то есть каждый файл может быть либо сжат, либо зашифрован (сжатие возможно только для разделов диска до 16 ТБ) на уровне диска (в FAT16); в FAT32 не поддерживается Максимальное количество файлов (232−1) в FAT32 не более (228−12)+

См. также FAT

Примечания

Ссылки

NTFS-3G Расширенные возможности NTFS : статьи, примеры кода, утилиты.

В чём разница между exFAT, FAT32 и NTFS файловыми системами

Категория:Файловые системы Категория:Windows NT Категория:Журналируемые файловые системы Категория:Файловые системы Microsoft