NTFS

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
NTFS
Разработчик

Microsoft

Файловая система

New Technology File System[1]

Дата представления

Июль 1993 (Windows NT 3.1)

Метка тома

0x07 (MBR)
EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (GPT)

Структура
Содержимое папок

B±дерево[2]

Размещение файлов

Bitmap

Сбойные сектора

$badclus

Ограничения
Максимальный размер файла

264 байт (16 ЭБ) минус 1 КБ[3]

Максимум файлов

4 294 967 295 (232−1)[3]

Максимальная длина имени файла

255 UTF-16 16-битовых слов[4]

Максимальный размер тома

264 − 1 кластер[3]

Допустимые символы в названиях

В пространстве имён Posix любое из 16-битовых слов в кодировке UTF-16 (чувствительных к регистру) за исключением U+0000 (NUL) и / (косая). В пространстве имён Win32 любое 16-битовое слово в кодировке UTF-16 (нечувствительные к регистру) за исключением U+0000 (NUL) / (косая) \ (обратная косая) : (двоеточие) * (звездочка) ? (знак вопроса) " (кавычки) < (знак меньше) > (знак больше) и | (пайп)[4]

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

Создание, изменение, изменения согласно POSIX, доступ

Диапазон дат

1 января 1601 — 28 мая 60056 (на хранение даты и времени отведено 64 бита, шаг — 100 наносекунд (десять миллионов интервалов в секунду), что позволит указать дату и время в промежутке из 58 тысяч лет)

Точность хранения даты

100 наносекунд

Потоки метаданных

Да (см. Альтернативные потоки данных)

Атрибуты

Только чтение (Read-only), Скрытый (Hidden), Системный (System), Требует архивирования (Archive), Не проиндексирован (Not content indexed), Недоступен (Off-line), Временный (Temporary), Сжатый (Compressed), Зашифрованный (Encrypted)

Права доступа

ACL

Фоновая компрессия

Пофайлово, LZ77 (Windows NT 3.51 и старше)

Фоновое шифрование

Пофайлово,
DESX (Windows 2000 и старше),
Triple DES (Windows XP и старше),
AES (Windows XP Service Pack 1, Windows Server 2003 и старше)

Поддерживается ОС

Семейство Windows NT: (начиная с Windows NT 3.1 до Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012), Mac OS X, Linux

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

NTFS заменила использовавшуюся в MS-DOS и Microsoft Windows файловую систему FAT. NTFS поддерживает систему метаданных и использует специализированные структуры данных для хранения информации о файлах для улучшения производительности, надёжности и эффективности использования дискового пространства. NTFS хранит информацию о файлах в главной файловой таблице — Master File Table (MFT). NTFS имеет встроенные возможности разграничения доступа к данным для различных пользователей и групп пользователей (списки контроля доступа — Access Control Lists (ACL)), а также назначать квоты (ограничения на максимальный объём дискового пространства, занимаемый теми или иными пользователями). NTFS использует систему журналирования USN для повышения надёжности файловой системы.

NTFS разработана на основе файловой системы HPFS (от англ. High Performance File System — высокопроизводительная файловая система), создававшейся Microsoft совместно с IBM для операционной системы OS/2. Но, получив такие несомненно полезные новшества, как квотирование, журналируемость, разграничение доступа и аудит, в значительной степени утратила[источник не указан 883 дня] присущую прародительнице (HPFS) весьма высокую производительность файловых операций.

Версии NTFS[править | править вики-текст]

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

Версия NTFS Поддержка со стороны ОС Примечания
Windows Другие
1.0 Windows NT 3.1 н/д
1.1 Windows NT 3.5 н/д
1.2 Windows NT 3.51 н/д Встречается название, в версии драйвера — «NTFS 4.0»
2.x н/д н/д Нет официальных данных о выпуске NTFS данной версии
3.0 Windows 2000 Встречаются названия «NTFS V5.0» и «NTFS5».
В этой версии появились дисковые квоты (англ.)русск., шифрование файлов и папок, разрежение файлов, точки перехода (англ.)русск., обновлён порядковый номер журналирования (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
н/д Вышла осенью 2001 года с выпуском Windows XP. Встречается название «NTFS V5.1». Введена резервная копия MFT.

Поддержка операционными системами[править | править вики-текст]

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

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

MS-DOS[править | править вики-текст]

  • Драйвер NTFSDOS Марка Руссиновича (Mark Russinovich) — поддержка чтения, а в версии Professional и записи на NTFS-разделы (с июля 2006 права на утилиты Марка Руссиновича принадлежат Microsoft[5]; на сайте компании информации об этом продукте нет, но его без труда можно найти в Сети).

Windows 9x[править | править вики-текст]

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

Linux[править | править вики-текст]

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

OpenSolaris/Solaris[править | править вики-текст]

BeOS-совместимые операционные системы[править | править вики-текст]

Речь идёт об операционных системах BeOS, Zeta и Haiku.

KolibriOS[править | править вики-текст]

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

Mac OS X[править | править вики-текст]

С форматом NTFS система Mac OS X по умолчанию работает в режиме чтения. После официального выхода Mac OS X 10.6 Snow Leopard была найдена возможность включения поддержки не только чтения файловой системы NTFS, но и записи на неё стандартным драйвером:

  • Включение поддержки чтения и записи NTFS в Mac OS X 10.6 Snow Leopard стандартными средствами.[8]
  • Включение поддержки чтения и записи NTFS в Mac OS X 10.7 Lion стандартными средствами.[9]

Также существуют сторонние драйверы для поддержки чтения и записи NTFS в операционной системе Mac OS X:

  • Paragon NTFS для Mac OS X[10]
  • NTFS-3G для Mac OS X[11]
  • MacFUSE 2.0[12]

Сравнительная таблица файловых систем FAT и NTFS[править | править вики-текст]

Ограничения / возможности NTFS FAT16 и FAT32
Размеры диска 264 байт (16 экзабайт или 18 446 744 073 709 551 616 байт) Приблизительно равняется 8 терабайт
Размер тома Теоретически — 264 - 1 кластер. Разметка диска в стиле MBR позволяет создавать разделы, размеры которых не превышают 2 ТБ. Чтобы обойти это ограничение, необходимо использование динамических дисков или разметки GPT, поддерживающей разделы диска размером до 9.4 ЗБ (9.4 × 1021 байт). Выбор стиля разметки предоставляется при инициализации (первоначальной разметке) диска, начиная с версии Windows Server 2003 SP1, Windows XP x64 Edition, Windows Server 2003 x64 Edition и все версии NT выше 6.0.[13] Запись в таблице FAT на томе с файловой системой FAT32 имеет размер 4 байта, поэтому средство ScanDisk не может работать с таблицей FAT на диске FAT32, описывающей более 4 177 920 кластеров (включая два резервных). С учетом самих таблиц FAT и при максимальном размере кластера 32 КБ размер тома может быть до 127,53 ГБ. В Windows 2000 нельзя отформатировать том размером более 32 ГБ с файловой системой FAT32. Драйвер FastFAT для Windows 2000 способен подключать и поддерживать тома размером больше 32 ГБ с файловой системой FAT32 (с определенными ограничениями), но такой том нельзя создать с помощью команды «Format».
Форматирование дискет Windows не позволяет форматировать дискеты в NTFS (ntfsflp от Марка Руссиновича позволяет).
Поддержка типов ссылок NTFS поддерживает жёсткие (Hardlinks) и символьные ссылки, Junctions, Volume Mount Point. FAT не поддерживает ссылки.
Максимальный размер файла Теоретически — 264 байт минус 1 килобайт.
Практически — 244 байт минус 64 килобайта (~16384 гигабайт или ~16 терабайт)[14].
FAT16 поддерживает файлы размером не более 2 ГБ.
FAT32 поддерживает файлы размером не более 4 ГБ.
Средства безопасности. Атрибуты файлов, авторизация с использованием DACL, шифрование с использованием EFS. Атрибуты файлов.
Аудит С использованием SACL. Не поддерживается.
Поддержка сжатия. На уровне файловой системы для файлов, каталогов и дисков. На уровне диска (в FAT16). В FAT32 не поддерживается.
Максимальное количество файлов 4 294 967 295 (232 — 1). В FAT32 не более 268 435 444 (228−12)

Примечания[править | править вики-текст]

  1. Windows XP: Format backup drives using NTFS. Microsoft (September 7, 2006). Архивировано из первоисточника 25 августа 2011.
  2. Mark Russinovich. Inside Win2K NTFS, Part 1. Microsoft Developer Network. Проверено 18 апреля 2008. Архивировано из первоисточника 25 августа 2011.
  3. 1 2 3 Microsoft Corporation. How NTFS Works. Проверено 27 января 2008. Архивировано из первоисточника 25 августа 2011.
  4. 1 2 Richard Russon and Yuval Fledel. NTFS Documentation(недоступная ссылка — история). Проверено 1 июля 2007. Архивировано из первоисточника 13 февраля 2006.
  5. 1 2 Microsoft TechNet: Windows Sysinternals (англ.). Проверено 25 сентября 2007. Архивировано из первоисточника 25 августа 2011.
  6. NTFS for Linux Express (англ.). Проверено 28 августа 2008. Архивировано из первоисточника 25 августа 2011.
  7. How to mount NTFS and FAT32 partitions in OpenSolaris 2008.11
  8. Как включить поддержку чтения и записи NTFS в Mac OS X 10.6 Snow Leopard стандартными средствами.
  9. Как включить поддержку чтения и записи NTFS в Mac OS X 10.7 Lion стандартными средствами.
  10. NTFS for Mac® OS X
  11. NTFS-3G Stable Read/Write Driver
  12. MacFUSE 2.0
  13. Windows and GPT FAQ
  14. Microsoft Corporation. How NTFS Works. Проверено 1 июля 2009. Архивировано из первоисточника 25 августа 2011.

Ссылки[править | править вики-текст]