Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

NTFS ( файловая система новой технологии ) [1] - это проприетарная файловая система журналирования, разработанная Microsoft . [1] Начиная с Windows NT 3.1 , это файловая система по умолчанию для семейства Windows NT . [9]

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

NTFS также поддерживается другими настольными и серверными операционными системами. Linux и BSD имеют бесплатный драйвер NTFS с открытым исходным кодом , называемый NTFS-3G , с функциями чтения и записи. macOS поддерживает NTFS только для чтения.

История [ править ]

В середине 1980-х годов Microsoft и IBM сформировали совместный проект по созданию графической операционной системы следующего поколения ; Результатом были OS / 2 и HPFS . Поскольку Microsoft не соглашалась с IBM по многим важным вопросам, в конце концов они расстались; OS / 2 оставалась проектом IBM, а Microsoft работала над Windows NT и NTFS.

HPFS файловая система для OS / 2 содержит несколько новых важных функций. Когда Microsoft создавала свою новую операционную систему, они «позаимствовали» многие из этих концепций для NTFS. [10] Первыми разработчиками NTFS были Том Миллер , Гэри Кимура, Брайан Эндрю и Дэвид Гебель. [11]

Вероятно, в результате этого общего происхождения HPFS и NTFS используют один и тот же код типа идентификации раздела диска (07). Использование одного и того же номера записи идентификатора раздела крайне необычно, поскольку были доступны десятки неиспользуемых кодовых номеров, а другие основные файловые системы имеют свои собственные коды. Например, в FAT их больше девяти (по одному для FAT12 , FAT16 , FAT32 и т. Д.). Алгоритмы, идентифицирующие файловую систему в разделе типа 07, должны выполнять дополнительные проверки, чтобы различать HPFS и NTFS.

Версии [ править ]

Microsoft выпустила пять версий NTFS:

Номер NTFS.sys версии (например, v5.0 в Windows 2000) зависит от версии операционной системы; его не следует путать с номером версии NTFS (v3.1 начиная с Windows XP). [15]

Хотя в последующих версиях Windows были добавлены новые функции, связанные с файловой системой, сама NTFS не изменилась. Например, Windows Vista реализована NTFS символические ссылки , транзакционной файловой системы NTFS , раздел термоусадки, и самовосстановления. [16] Символические ссылки NTFS - это новая функция файловой системы; все остальные - это новые функции операционной системы, в которых используются уже существующие функции NTFS.

Особенности [ править ]

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

Масштабируемость [ править ]

NTFS оптимизирована для кластеров 4  КБ , но поддерживает максимальный размер кластера 2 МБ . (Более ранние реализации поддерживают до 64 КБ) [5] Максимальный размер тома NTFS, который может поддерживать спецификация, составляет 2 64 - 1 кластер, но не все реализации достигают этого теоретического максимума, как обсуждается ниже.  

Максимальный размер тома NTFS, реализованный в Windows XP Professional, составляет 2 32 - 1 кластер, отчасти из-за ограничений таблицы разделов. Например, при использовании  кластеров размером 64 КБ максимальный размер тома NTFS Windows XP составляет 256 ТБ минус 64 КБ . При использовании размера кластера по умолчанию 4 КБ максимальный размер тома NTFS составляет 16 ТБ минус 4 КБ. Оба они намного превышают ограничение в 128 ГБ в Windows XP SP1 . Поскольку таблицы разделов на дисках с основной загрузочной записью (MBR) поддерживают только разделы размером до 2 ТБ, таблица разделов с несколькими идентификаторами GUID       (GPT или «динамические») тома необходимо объединить для создания одного тома NTFS размером более 2  ТБ. Для загрузки с тома GPT в среду Windows способом, поддерживаемым Microsoft, требуется система с унифицированным расширяемым интерфейсом микропрограмм (UEFI) и поддержкой 64-разрядных версий . [17]

Максимальный теоретический предел NTFS на размер отдельных файлов составляет 16 ЭБ [18] ( 16 × 1024 6 или 2 64 байта ) минус 1 КБ, что составляет 18 446 744 073 709 550 592 байта. С Windows 10 версии 1709 и Windows Server 2019 , максимальный реализован размер файла 8 PB минус 2 MB или 9,007,199,252,643,840 байт. [5]    

Журнал [ править ]

NTFS - это файловая система с журналированием, которая использует журнал NTFS ($ LogFile) для записи изменений метаданных на том. Это функция, которую FAT не предоставляет, и она имеет решающее значение для NTFS, чтобы гарантировать, что ее сложные внутренние структуры данных останутся согласованными в случае сбоев системы или перемещений данных, выполняемых API дефрагментации , и позволяют легко откатить незафиксированные изменения в этих критических структурах данных. при перемонтировании тома. Наиболее затронутыми структурами являются битовая карта распределения томов, модификации записей MFT, такие как перемещение некоторых атрибутов переменной длины, хранящихся в записях MFT и списках атрибутов, а также индексы для каталогов и дескрипторов безопасности .

Формат ($ LogFile) эволюционировал в несколько версий:

Несовместимость версий $ LogFile, реализованных в Windows 8.1 и Windows 10, не позволяет Windows 8 (и более ранним версиям Windows) правильно обрабатывать $ LogFile в случае, если том NTFS остается в грязном состоянии из-за внезапного завершения работы или перехода в спящий режим на диск. в состоянии выхода из системы (также известный как гибридная загрузка или быстрая загрузка, которая включена по умолчанию в Windows 10 ). Эта неспособность обработать v2.0 файла $ LogFile на грязных томах этими более ранними версиями Windows приводит к вызову утилиты восстановления диска CHKDSK при двойной загрузке Windows 10 с этими более старыми системами. Реестр Windowsсуществует настройка, предотвращающая автоматическое обновление $ LogFile до более новой версии. [19] [ нужен лучший источник ]

USN Journal (Update Sequence Number Journal) является функцией управления системой , которая записывает (в $ Extend \ $ UsnJrnl) изменения файлов, потоки и каталоги на томе, а также их различные атрибуты и параметры безопасности. Журнал предоставляется приложениям для отслеживания изменений в объеме. [20] Этот журнал можно включить или отключить на несистемных томах. [21]

Жесткие ссылки [ править ]

Функция жесткой ссылки позволяет различным именам файлов напрямую ссылаться на одно и то же содержимое файла. Жесткие ссылки похожи на соединения каталогов , но вместо этого относятся к файлам. Жесткие ссылки могут ссылаться только на файлы в одном томе, потому что каждый том имеет свою собственную MFT . Жесткие ссылки имеют собственные метаданные файла, поэтому изменение размера файла или атрибутов одной жесткой ссылки может не обновлять другие, пока они не будут открыты. [22] Изначально жесткие ссылки были включены для поддержки подсистемы POSIX в Windows NT. [23]

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

Файловая система NTFS имеет ограничение в 1024 жестких ссылки на файл. [24]

Альтернативный поток данных (ADS) [ править ]

Альтернативные потоки данных позволяют связать более одного потока данных с именем файла ( вилкой ), используя формат «имя файла: имя потока» (например, «text.txt: extrastream»).

Потоки NTFS были введены в Windows NT 3.1 , чтобы позволить службам для Macintosh (SFM) хранить вилки ресурсов . Хотя современные версии Windows Server больше не включают в УЛП, третья сторона Apple , FILING протокол (AFP) продукты (такие как GroupLogic «s ExtremeZ-IP ) до сих пор использует эту особенность файловой системы. Очень маленькие ADS (названные «Zone.Identifier») добавляются Internet Explorer, а в последнее время и другими браузерами, чтобы отмечать файлы, загруженные с внешних сайтов, как потенциально небезопасные для запуска; тогда локальная оболочка потребует подтверждения пользователя перед их открытием. [25] Когда пользователь указывает, что он больше не хочет этого диалогового окна подтверждения, этот ADS удаляется.

Альтернативные потоки не отображаются в проводнике Windows, и их размер не входит в размер файла. Когда файл копируется или перемещается в другую файловую систему без поддержки ADS, пользователь получает предупреждение о невозможности сохранения альтернативных потоков данных. Такое предупреждение обычно не появляется, если файл прикреплен к электронному письму или загружен на веб-сайт. Таким образом, использование альтернативных потоков для критических данных может вызвать проблемы. Microsoft предоставляет инструмент под названием Streams [26] для просмотра потоков на выбранном томе. Начиная с Windows PowerShell 3.0, можно изначально управлять ADS с помощью шести командлетов: Add-Content, Clear-Content, Get-Content, Get-Item, Remove-Item, Set-Content. [27]

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

Сжатие файла [ править ]

NTFS может сжимать файлы с использованием алгоритма LZNT1 (вариант LZ77 ) [29] Файлы сжимаются в 16 блоков кластера. При использовании кластеров размером 4  КБ файлы сжимаются блоками по 64 КБ. Алгоритмы сжатия в NTFS предназначены для поддержки кластеров размером до 4 КБ. Если размер кластера на томе NTFS превышает 4 КБ, сжатие NTFS недоступно. [30] Если сжатие уменьшает  объем данных с 64 КБ до 60  КБ или меньше, NTFS обрабатывает ненужные  страницы размером 4 КБ как пустые разреженные кластеры файлов - они не записываются. Это обеспечивает разумное время произвольного доступа, поскольку ОС просто должна следовать цепочке фрагментов.

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

Однако большие сжимаемые файлы становятся сильно фрагментированными, поскольку каждый кусок меньше 64  КБ становится фрагментом. [31] [32] Согласно исследованию группы разработчиков NTFS Microsoft, 50–60 ГБ - это разумный максимальный размер для сжатого файла на томе NTFS с размером кластера (блока) 4 КБ (по умолчанию). Этот разумный максимальный размер резко уменьшается для томов с меньшим размером кластера. [31] Однопользовательские системы с ограниченным пространством на жестком диске могут извлечь выгоду из сжатия NTFS для небольших файлов, от 4 до 64 КБ или более, в зависимости от сжимаемости. Файлы размером менее 900 байт хранятся в записи каталога MFT . [33]    

Флэш-память, такая как SSD- накопители, не имеет задержек движения головки, как у жестких дисков , поэтому фрагментация имеет лишь меньшие потери. Пользователи быстрых многоядерных процессоров обнаружат повышение скорости работы приложений за счет сжатия своих приложений и данных, а также за счет уменьшения используемого пространства. Обратите внимание, что твердотельные накопители с контроллерами Sandforce уже сжимают данные. Однако, поскольку передается меньше данных, сокращается количество операций ввода-вывода. [34]

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

Если системные файлы, необходимые во время загрузки (например, драйверы, NTLDR, winload.exe или BOOTMGR), сжаты, система может не загрузиться правильно, поскольку фильтры распаковки еще не загружены. [35] Более поздние версии Windows [ какие? ] не позволяют сжимать важные системные файлы.

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

Хотя доступ для чтения и записи к сжатым файлам является прозрачным , [36] Microsoft рекомендует избегать сжатия на серверах или общих сетевых ресурсах, содержащих перемещаемые профили, поскольку это создает значительную нагрузку на процессор. [37]

Алгоритмы CompactOS [ править ]

Начиная с Windows 10 , Microsoft представила дополнительные алгоритмы, а именно XPRESS4K / 8K / 16K и LZX . Оба алгоритма основаны на LZ77 с энтропийным кодированием Хаффмана , которого не хватало LZNT1. Эти алгоритмы были взяты из формата изображений Windows . В основном они используются для новой функции CompactOS, которая сжимает весь системный раздел с помощью одного из этих алгоритмов. [38] Их также можно вручную включить для каждого файла с помощью /exeфлага compactкоманды. При использовании с файлами алгоритм CompactOS избегает фрагментации , записывая сжатые данные в непрерывно выделенные фрагменты. [ необходима цитата ]

Редкие файлы [ править ]

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

Разреженные файлы - это файлы, перемежающиеся пустыми сегментами, для которых не используется фактическое пространство для хранения. Для приложений файл выглядит как обычный файл с пустыми областями, которые выглядят как области, заполненные нулями. [39] Редкий файл не обязательно включает области с разреженными нулями; атрибут "разреженный файл" просто означает, что они разрешены для файла.

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

Volume Shadow Copy [ править ]

Служба теневого копирования томов (VSS) хранит исторические версии файлов и папок на томах NTFS путем копирования старых, недавно перезаписанных данных в теневую копию с помощью метода копирования при записи . Позже пользователь может запросить восстановление более ранней версии. Это также позволяет программам резервного копирования данных архивировать файлы, которые в настоящее время используются файловой системой. В сильно загруженных системах Microsoft рекомендует настраивать том теневой копии на отдельном диске. [42]

В Windows Vista также представлены постоянные теневые копии для использования с функциями восстановления системы и предыдущих версий . Однако постоянные теневые копии удаляются, когда более старая операционная система подключает этот том NTFS. Это происходит потому, что старая операционная система не поддерживает новый формат постоянных теневых копий. [43]

Транзакции [ править ]

Начиная с Windows Vista, приложения могут использовать Transactional NTFS (TxF) для группирования нескольких изменений файлов в одну транзакцию. Транзакция гарантирует, что либо все изменения произойдут, либо ни одно из них не произойдет, и что никакое приложение вне транзакции не увидит изменений, пока они не будут зафиксированы. [44]

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

Транзакционная NTFS не ограничивает транзакции только локальным томом NTFS, но также включает другие транзакционные данные или операции в других местах, такие как данные, хранящиеся в отдельных томах, локальный реестр или базы данных SQL, или текущее состояние системных служб или удаленных служб. . Эти транзакции координируются в масштабе всей сети со всеми участниками, использующими определенную службу, DTC , чтобы гарантировать, что все участники получат одно и то же состояние фиксации, и для передачи изменений, которые были подтверждены любым участником (чтобы другие могли аннулировать свои локальные кеширует старые данные или откатывает их текущие незафиксированные изменения). Транзакционная NTFS позволяет, например, создавать согласованные распределенные файловые системы в масштабе всей сети, в том числе с их локальными оперативными или автономными кэшами.

Microsoft теперь не рекомендует использовать TxF: «Microsoft настоятельно рекомендует разработчикам использовать альтернативные средства», поскольку «TxF может быть недоступен в будущих версиях Microsoft Windows». [45]

Безопасность [ править ]

В NTFS каждому файлу или папке назначается дескриптор безопасности, который определяет его владельца и содержит два списка управления доступом (ACL). Первый ACL, называемый списком управления дискреционным доступом (DACL), точно определяет, какие типы взаимодействий (например, чтение, запись, выполнение или удаление) разрешены или запрещены каким пользователем или группами пользователей. Например, файлы в C:\Program Files папке могут быть прочитаны и выполнены всеми пользователями, но изменены только пользователем, имеющим административные привилегии. [46] Windows Vista добавляет в списки DACL информацию об обязательном управлении доступом . DACL являются основным направлением контроля учетных записей пользователей в Windows Vista и более поздних версиях.

Второй ACL, называемый системным списком управления доступом (SACL), определяет, какие взаимодействия с файлом или папкой должны быть проверены и должны ли они регистрироваться в случае успешного или неудачного действия или и того, и другого. Например, аудит может быть включен для конфиденциальных файлов компании, чтобы ее менеджеры узнавали, когда кто-то пытается удалить их или сделать их копию, и удалось ли ему или ей. [46]

Шифрование [ править ]

Шифрованная файловая система (EFS) обеспечивает надежное [47] и прозрачное для пользователя шифрование любого файла или папки на томе NTFS. EFS работает вместе со службой EFS, Microsoft CryptoAPI и библиотекой времени выполнения файловой системы EFS (FSRTL). EFS работает путем шифрования файла с помощью массового симметричного ключа (также известного как ключ шифрования файла или FEK), который используется, потому что для шифрования и дешифрования больших объемов данных требуется относительно небольшое количество времени, чем при использовании шифрования с асимметричным ключом. используется. Симметричный ключ, который используется для шифрования файла, затем зашифровывается открытым ключом.который связан с пользователем, который зашифровал файл, и эти зашифрованные данные хранятся в альтернативном потоке данных зашифрованного файла. Чтобы расшифровать файл, файловая система использует закрытый ключ пользователя, чтобы расшифровать симметричный ключ, который хранится в потоке данных. Затем он использует симметричный ключ для дешифрования файла. Поскольку это делается на уровне файловой системы, это прозрачно для пользователя. [48] Кроме того, в случае потери пользователем доступа к своему ключу в систему EFS была встроена поддержка дополнительных ключей дешифрования, так что агент восстановления может получить доступ к файлам при необходимости. Шифрование с помощью NTFS и сжатие с помощью NTFS взаимоисключают; тем не менее, NTFS может использоваться для одного и стороннего инструмента для другого.

Поддержка EFS недоступна в версиях Windows Basic, Home и MediaCenter, и ее необходимо активировать после установки версий Windows Professional, Ultimate и Server или с помощью средств корпоративного развертывания в доменах Windows.

Квоты [ править ]

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

Точки повторной обработки [ править ]

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

Изменение размера [ править ]

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

Внутреннее [ править ]

Файловая система разрешений NTFS на Windows Vista системы

Внутри NTFS использует B-деревья для индексации данных файловой системы. Журнал файловой системы используются для обеспечения целостности метаданных файловой системы , но не содержания отдельных файлов. Известно, что системы, использующие NTFS, обладают повышенной надежностью по сравнению с файловыми системами FAT. [49]

NTFS допускает любую последовательность 16-битных значений для кодировки имен (имена файлов, имена потоков, имена индексов и т. Д.), Кроме 0x0000. Это означает , что поддерживаются единицы кода UTF-16 , но файловая система не проверяет, является ли последовательность допустимой UTF-16 (она допускает любую последовательность коротких значений, не ограничиваясь теми, которые указаны в стандарте Unicode). В пространстве имен Win32 любые единицы кода UTF-16 нечувствительны к регистру, тогда как в пространстве имен POSIX они чувствительны к регистру. Имена файлов ограничены 255 кодовыми единицами UTF-16 . Некоторые имена зарезервированы в корневом каталоге тома и не могут использоваться для файлов. Это $MFT, $MFTMirr, $LogFile, $Volume, $AttrDef, .(точка), $Bitmap, $Boot, $BadClus, $Secure,$UpCase, и $Extend. [4] . (точка) и $Extendоба являются каталогами; остальные - файлы. Ядро NT ограничивает полные пути до 32 767 единиц кода UTF-16. Существуют некоторые дополнительные ограничения на кодовые точки и имена файлов. [50]

Загрузочный сектор раздела (VBR) [ править ]

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

ОС сначала просматривает 8 байтов в 0x30, чтобы найти номер кластера $ MFT, затем умножает это число на количество секторов в кластере (1 байт находится в 0x0D). Это значение представляет собой смещение сектора ( LBA ) относительно $ MFT, которое описано ниже.

Основная таблица файлов [ править ]

В NTFS все данные файлов, каталогов и метафайлов - имя файла, дата создания, права доступа (с использованием списков контроля доступа ) и размер - хранятся в виде метаданных в главной таблице файлов ( MFT ). Этот абстрактный подход позволял легко добавлять функции файловой системы во время разработки Windows NT - примером является добавление полей для индексации, используемых программным обеспечением Active Directory . Это также позволяет программному обеспечению быстрого поиска файлов очень быстро находить именованные локальные файлы и папки, включенные в MFT, без необходимости в каком-либо другом индексе.

Структура MFT поддерживает алгоритмы, минимизирующие фрагментацию диска . [53] Запись в каталоге состоит из имени файла и «идентификатора файла» (аналогично номеру inode ), который является номером записи, представляющей файл в главной таблице файлов. Идентификатор файла также содержит счетчик повторного использования для обнаружения устаревших ссылок. Хотя это сильно напоминает W_FID Files-11 , другие структуры NTFS радикально отличаются.

Две копии MFT сохраняются на случай повреждения. Если первая запись повреждена, NTFS читает вторую запись, чтобы найти файл зеркала MFT. Расположение обоих файлов хранится в загрузочном секторе. [54]

Метафайлы [ править ]

NTFS содержит несколько файлов, которые определяют и организуют файловую систему. Во всех отношениях большинство этих файлов имеют структуру, как и любой другой пользовательский файл (наиболее необычным является $ Volume), но не представляют прямого интереса для клиентов файловой системы. [55] Эти метафайлы определяют файлы, создают резервные копии важных данных файловой системы, буферируют изменения файловой системы, управляют выделением свободного пространства, удовлетворяют ожиданиям BIOS , отслеживают неверные единицы распределения и хранят информацию о безопасности и использовании дискового пространства. Все содержимое находится в безымянном потоке данных, если не указано иное.

Эти метафайлы обрабатываются специально Windows, обрабатываются непосредственно NTFS.SYSдрайвером, и их трудно напрямую просматривать: необходимы специальные инструменты. [56] Начиная с Windows 7, драйвер NTFS полностью запрещает доступ пользователей, что приводит к BSoD всякий раз, когда делается попытка выполнить файл метаданных. Одним из таких инструментов является nfi.exe («Утилита информации о файловом секторе NTFS»), которая свободно распространяется как часть Microsoft «OEM Support Tools». Например, для получения информации о сегменте главной таблицы файлов «$ MFT» используется следующая команда: nfi.exe c:\$MFT[57] Другой способ обойти ограничение - использовать файловый менеджер 7-Zip и перейти к файловой системе NTFS нижнего уровня. путь \\.\X:\(гдеX:\напоминает любой диск / раздел). Здесь появятся 3 новые папки: $EXTEND, [DELETED](псевдо-папку, 7-Zip использует присоединять файлы , удаленные из файловой системы для просмотра), и [SYSTEM](еще один псевдо-папку, содержащую все файлы метаданных NTFS). Этот трюк можно использовать со съемных устройств ( USB- флеш-накопители, внешние жесткие диски , SD-карты и т. Д.) Внутри Windows, но для выполнения этого на активном разделе требуется автономный доступ (а именно WinRE ).

Списки атрибутов, атрибуты и потоки [ править ]

Для каждого файла (или каталога), описанного в записи MFT, существует линейный репозиторий дескрипторов потока (также называемых атрибутами ), упакованных вместе в одну или несколько записей MFT (содержащих так называемый список атрибутов ), с дополнительным заполнением для заполнения фиксированный размер 1 КБ каждой записи MFT, который полностью описывает эффективные потоки, связанные с этим файлом.

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

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

  • Для каждого файла в MFT атрибуты, идентифицируемые по типу атрибута, имя атрибута должны быть уникальными. Кроме того, NTFS имеет некоторые ограничения порядка для этих атрибутов.
  • Существует предопределенный тип нулевого атрибута, используемый для обозначения конца списка атрибутов в одной записи MFT. Он должен присутствовать в качестве последнего атрибута в записи (все остальное пространство хранения, доступное после него, будет проигнорировано и просто состоит из байтов заполнения, чтобы соответствовать размеру записи в MFT).
  • Некоторые типы атрибутов являются обязательными и должны присутствовать в каждой записи MFT, за исключением неиспользуемых записей, которые просто указаны нулевыми типами атрибутов.
    • Это относится к атрибуту $ STANDARD_INFORMATION, который хранится как запись фиксированного размера и содержит отметки времени и другие базовые однобитовые атрибуты (совместимые с атрибутами, управляемыми FAT в DOS или Windows 9x ).
  • Некоторые типы атрибутов не могут иметь имени и должны оставаться анонимными.
    • Это справедливо для стандартных атрибутов, или для предпочтительного типа атрибута NTFS «имя файла», или для типа атрибута «короткое имя файла», если он также присутствует (для совместимости с DOS-подобными приложениями см. Ниже). Также возможно, что файл будет содержать только короткое имя файла, и в этом случае оно будет предпочтительным, как указано в проводнике Windows.
    • Атрибуты имени файла, хранящиеся в списке атрибутов, не делают файл сразу доступным через иерархическую файловую систему. Фактически, все имена файлов должны быть проиндексированы отдельно по крайней мере в одном другом каталоге на том же томе. Там он должен иметь свою собственную запись MFT и свои собственные дескрипторы безопасности и атрибуты, которые ссылаются на номер записи MFT для этого файла. Это позволяет несколько раз «жестко связать» один и тот же файл или каталог с несколькими контейнерами на одном томе, возможно, с разными именами файлов.
  • Поток данных по умолчанию для обычного файла - это поток типа $ DATA, но с анонимным именем, и ADS похожи, но должны иметь имя.
  • С другой стороны, поток данных каталогов по умолчанию имеет отдельный тип, но не анонимный: у них есть имя атрибута («$ I30» в NTFS 3+), которое отражает его формат индексации.

Все атрибуты данного файла могут быть отображены с помощью nfi.exe («Утилита информации о файловом секторе NTFS»), которая свободно распространяется как часть Microsoft «OEM Support Tools». [57]

Системные вызовы Windows могут обрабатывать альтернативные потоки данных. [4] В зависимости от операционной системы, служебной программы и удаленной файловой системы при передаче файла могут автоматически удаляться потоки данных. [4] Безопасным способом копирования или перемещения файлов является использование системных вызовов BackupRead и BackupWrite, которые позволяют программам перечислять потоки, проверять, следует ли записывать каждый поток в целевой том, и сознательно пропускать нежелательные потоки. [4]

Атрибуты резидента и нерезидента [ править ]

Чтобы оптимизировать хранилище и уменьшить накладные расходы ввода-вывода для очень распространенного случая атрибутов с очень маленьким ассоциированным значением, NTFS предпочитает размещать значение внутри самого атрибута (если размер атрибута не превышает максимальный размер Запись MFT) вместо использования пространства записи MFT для перечисления кластеров, содержащих данные; в этом случае атрибут не будет хранить данные напрямую, а просто сохранит карту распределения (в форме прогонов данных ), указывающую на фактические данные, хранящиеся в другом месте на томе. [58] Когда к значению можно получить доступ непосредственно из атрибута, оно называется «резидентными данными» ( компьютерная криминалистикарабочие). Количество подходящих данных сильно зависит от характеристик файла, но от 700 до 800 байт обычно используются в однопоточных файлах с короткими именами файлов и без списков контроля доступа.

  • Некоторые атрибуты (такие как предпочтительное имя файла, основные атрибуты файла) нельзя сделать нерезидентными. Для нерезидентных атрибутов их карта распределения должна соответствовать записям MFT.
  • Зашифрованные NTFS, разреженные потоки данных или потоки сжатых данных нельзя сделать резидентными.
  • Формат карты распределения для нерезидентных атрибутов зависит от ее способности поддерживать разреженное хранилище данных. В текущей реализации NTFS, после того, как нерезидентный поток данных был помечен и преобразован как разреженный, его нельзя изменить обратно на не разреженные данные, поэтому он не может снова стать резидентным, если эти данные не будут полностью усечены, отбрасывая разреженные данные. карта размещения полностью.
  • Когда нерезидентный атрибут настолько фрагментирован, что его эффективная карта распределения не может полностью уместиться в одной записи MFT, NTFS сохраняет атрибут в нескольких записях. Первая из них называется базовой записью, а остальные - записями расширения. NTFS создает специальный атрибут $ ATTRIBUTE_LIST для хранения информации, отображающей различные части длинного атрибута в записи MFT, что означает, что карта распределения может быть разделена на несколько записей. Сам $ ATTRIBUTE_LIST также может быть нерезидентным, но его собственная карта распределения должна соответствовать одной записи MFT.
  • Если для файла слишком много атрибутов (включая ADS, расширенные атрибуты или дескрипторы безопасности ), так что они не могут уместиться в записи MFT, записи расширений также могут использоваться для хранения других атрибутов, используя тот же формат, что и один, используемый в базовой записи MFT, но без ограничений по пространству одной записи MFT.

Карта распределения хранится в виде прогонов данных со сжатым кодированием. Каждый цикл данных представляет собой непрерывную группу кластеров, в которых хранится значение атрибута. Для файлов на томе размером несколько ГБ каждая запись может быть закодирована от 5 до 7 байтов, что означает, что запись MFT размером 1 КБ может хранить около 100 таких прогонов данных. Однако, поскольку $ ATTRIBUTE_LIST также имеет ограничение по размеру, опасно иметь более 1 миллиона фрагментов одного файла на томе NTFS, что также подразумевает, что в целом не рекомендуется использовать сжатие NTFS для файла. больше 10  ГБ. [59]

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

Поскольку резидентные файлы не занимают непосредственно кластеры («единицы распределения»), том NTFS может содержать больше файлов на томе, чем кластеров. Например,  NTFS раздел на 74,5 ГБ форматируется с 19 543 064 кластерами по 4  КБ. Вычитание системных файлов (  файл журнала размером 64 МБ, файл Bitmap размером 2442888 байт и около 25 кластеров фиксированных накладных расходов) оставляет 19 526 158 кластеров свободными для файлов и индексов. Поскольку на кластер приходится четыре записи MFT, теоретически этот том может содержать почти 4 × 19 526 158 = 78 104 632 резидентных файла.

Оппортунистические блокировки [ править ]

Оппортунистические блокировки файлов (oplocks) позволяют клиентам изменять свою стратегию буферизации для данного файла или потока, чтобы повысить производительность и уменьшить использование сети. [60] Oplocks применяются к данному открытому потоку файла и не влияют на oplocks в другом потоке.

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

Windows поддерживает четыре различных типа блокировок:

  • Уровень 2 (или общая) оппортунистическая блокировка: несколько читателей, без писателей (т.е. кэширование чтения).
  • Необязательная блокировка уровня 1 (или исключительная): монопольный доступ с произвольной буферизацией (т.е. кэширование чтения и записи).
  • Пакетная оппозиционная блокировка (также эксклюзивная): поток открывается на сервере, но закрывается на клиентской машине (т.е. чтение, запись и кэширование обработки).
  • Блокировка фильтра (также эксклюзивная): приложения и фильтры файловой системы могут «отступать», когда другие пытаются получить доступ к тому же потоку (например, кэширование чтения и записи) (начиная с Windows 2000)

Оппортунистические блокировки были улучшены в Windows 7 и Windows Server 2008 R2 с помощью ключей оппортунистической блокировки для каждого клиента. [61]

Время [ править ]

Windows NT и ее потомки хранят внутренние временные метки как UTC и выполняют соответствующие преобразования для отображения; все временные метки NTFS указаны в формате UTC. [ необходима цитата ]

По историческим причинам все версии Windows, не поддерживающие NTFS, сохраняют внутреннее время как время локальной зоны, и, следовательно, то же самое делают все файловые системы, кроме NTFS, которые поддерживаются текущими версиями Windows. Это означает, что когда файлы копируются или перемещаются между разделами NTFS и не-NTFS, ОС должна на лету конвертировать временные метки. Но если некоторые файлы перемещаются, когда действует летнее время (DST), а другие файлы перемещаются, когда действует стандартное времядействительно, в преобразованиях могут быть некоторые неточности. В результате, особенно вскоре после одного из дней, когда изменяется время локальной зоны, пользователи могут заметить, что некоторые файлы имеют временные метки с ошибкой на один час. Из-за различий в реализации DST в разных юрисдикциях это может привести к потенциальной ошибке отметки времени до 4 часов в любой заданный 12 месяцев. [62]

Совместимость [ править ]

Хотя различные версии NTFS по большей части полностью совместимы с прямой и обратной связями , существуют технические соображения по установке новых томов NTFS в более старые версии Microsoft Windows. Это влияет на двойную загрузку и внешние переносные жесткие диски. Например, попытка использовать раздел NTFS с «Предыдущими версиями» (также известный как теневое копирование тома ) в операционной системе, которая его не поддерживает, приведет к потере содержимого этих предыдущих версий. [63] Утилита командной строки Windows под названием convert.exe может преобразовывать поддерживаемые файловые системы в NTFS, включая HPFS (только в Windows NT 3.1, 3.5 и 3.51), FAT16и FAT32 (в Windows 2000 и новее). [64] [65]

Начиная с Windows 10 версии 1709, известной как Fall Creators Update, Microsoft требует, чтобы файловая структура OneDrive располагалась на диске NTFS. Это связано с тем, что тег повторной обработки для каждого файла и каталога в локальной файловой структуре OneDrive устанавливается рекурсивным образом, что делает файл или папку непригодными для использования в любой предыдущей версии Windows, с любым другим драйвером файловой системы NTFS или любой файловой системой. и утилиты резервного копирования, не обновленные для его поддержки. Неизвестно, является ли рекурсивное связывание функцией файловой системы NTFS или недокументированным обходным путем Microsoft для поддержки новой функции OneDrive «Файлы по запросу».

Реализации [ править ]

FreeBSD 3.2, выпущенная в мае 1999 года, включала поддержку NTFS только для чтения, написанную Семеном Устименко. [66] [67] Эта реализация была перенесена на NetBSD Христосом Зуласом и Яромиром Долечеком и выпущена вместе с NetBSD 1.5 в декабре 2000 года. [68] Реализация NTFS для FreeBSD была также перенесена на OpenBSD Жюльеном Борде и предлагает встроенную NTFS только для чтения. поддержка по умолчанию на платформах i386 и amd64 с версии 4.9, выпущенной 1 мая 2011 г. [69] [67]

Версия ядра Linux 2.2.0 и выше включает возможность чтения разделов NTFS; Версия ядра 2.6.0 и выше содержит драйвер, написанный Антоном Альтапармаковым ( Кембриджский университет ) и Ричардом Руссоном, который поддерживает чтение, перезапись и изменение размера файлов. Из-за сложности внутренней структуры NTFS встроенный драйвер ядра 2.6.14 запрещает изменения тома, которые считаются небезопасными, во избежание повреждения. [ необходима цитата ]

Mac OS X 10.3 включала в себя доступную только для чтения реализацию NTFS от FreeBSD Устименко. Затем Apple наняла Антона Альтапармакова для написания новой реализации NTFS для Mac OS X 10.6 . [70] Встроенная поддержка записи NTFS была обнаружена в 10.6 и более поздних версиях, но не активирована по умолчанию, хотя существуют обходные пути для включения этой функции. Однако отчеты пользователей указывают на то, что функциональность нестабильна и имеет тенденцию вызывать панику ядра , что, вероятно, является причиной того, что поддержка записи не была включена или объявлена. [71] [ нужен лучший источник ]

Captive NTFS , драйвер- оболочка , использующий собственный драйвер Windows ntfs.sys , существует для Linux. Он был построен как программа файловой системы в пользовательском пространстве (FUSE) и выпущен под лицензией GPL, но работа над Captive NTFS была прекращена в 2006 году. [72]

NTFS-3G - это бесплатная реализация NTFS под лицензией GPL FUSE, которая изначально была разработана Сабольчем Сакачитсом как драйвер ядра Linux. Он был переписан как программа FUSE для работы в других системах, поддерживаемых FUSE, таких как macOS , FreeBSD, NetBSD, OpenBSD , [73] Solaris, QNX и Haiku [74], и позволяет читать и записывать разделы NTFS. Коммерческая версия NTFS-3G с улучшенной производительностью, названная « Tuxera NTFS for Mac», также доступна от разработчиков NTFS-3G. [75]

Paragon Software Group продает драйвер для чтения-записи с именем NTFS для Mac OS X , [76] , который также включен в некоторых моделях Seagate жестких дисков. [77]

Пакет NetDrive для OS / 2 (и его производные, такие как eComStation и ArcaOS ) поддерживает плагин, который позволяет читать и записывать доступ к томам NTFS. [78] [79]

Существует бесплатный драйвер чтения / записи для MS-DOS от Avira под названием NTFS4DOS. [80] [81]

Компания Ahead Software разработала драйвер NTFSREAD (версия 1.200) для DR-DOS 7.0x в период с 2002 по 2004 год. Он был частью их программного обеспечения Nero Burning ROM .

См. Также [ править ]

  • Сравнение файловых систем
  • NTFSDOS
  • ntfsresize
  • WinFS
  • ReFS

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

  1. ^ a b c «1.1 Глоссарий» . [MS-EFSR]: протокол удаленного шифрования файловой системы (EFSRPC) . Microsoft. 14 ноября 2013 г.
  2. ^ «Как работает NTFS» . TechNet . Microsoft . Дата обращения 2 декабря 2017 .
  3. ^ «B * Trees - NTFS Directory Trees - Conecpt - NTFS Documentation» . flatcap.org . Проверено 13 мая 2019 .
  4. ^ a b c d e f g "Как работает NTFS" . Технический справочник по Windows Server 2003 . 2003-03-28 . Проверено 12 сентября 2011 .
  5. ^ a b c d "[MS-FSA]: Приложение A: Поведение продукта" . Microsoft. 2018-09-12 . Проверено 1 октября 2018 . NTFS использует размер кластера по умолчанию 4 КБ, максимальный размер кластера 64 КБ в операционной системе Windows 10 v1703 и Windows Server 2016 и ранее, и 2 МБ в операционной системе Windows 10 v1709 и Windows Server 2019 и более поздних версий, а также минимальный размер кластера. размер 512 байт.
  6. ^ «6 Приложение A: Поведение продукта» . [MS-FSA]: Алгоритмы файловой системы . Microsoft. 14 ноября 2013 . Проверено 21 сентября 2012 .
  7. ^ a b Рассон, Ричард; Фледель, Юваль. «Документация NTFS» (PDF) . Проверено 26 июня 2011 .
  8. ^ Рик Вановер. «Дедупликация данных Windows Server 8» . Проверено 2 декабря 2011 .
  9. ^ a b Кастер, Хелен (1994). Внутри файловой системы Windows NT . Microsoft Press . ISBN 978-1-55615-660-1.
  10. ^ Kozierok, Чарльз. «Обзор и история NTFS» . Руководство для ПК . Проверено 30 мая 2019 года .
  11. ^ Кастер, Хелен (1994). Внутри файловой системы Windows NT . Microsoft Press . п. vii. ISBN 978-1-55615-660-1.
  12. ^ «Восстановление Windows NT после сбоя загрузки на диске NTFS» . Microsoft. 1 ноября 2006 г.
  13. ^ a b Руссинович, Марк . «Внутри Windows 2000 NTFS, часть 1» . MSDN . Microsoft . Проверено 18 апреля 2008 .
  14. ^ "Что нового в Windows NT 4.0 с пакетом обновления 4?" . Microsoft.com . 12 января 1999 года Архивировано из оригинала 17 января 1999 года . Проверено 17 августа 2018 .
  15. ^ «Новые возможности и особенности файловой системы NTFS 3.1» . Microsoft. 1 декабря 2007 г.
  16. ^ Loveall, Джон (2006). «Улучшения хранилища в Windows Vista и Windows Server 2008» (PowerPoint) . Microsoft. С. 14–20 . Проверено 4 сентября 2007 .
  17. ^ «Загрузка с GPT» . Rodsbooks.com . Проверено 22 сентября 2018 года .
  18. ^ «NTFS против FAT против exFAT - NTFS.com» . www.ntfs.com . Проверено 19 января 2021 .
  19. ^ https://www.prime-expert.com/articles/b26/stop-disk-check-from-running-on-every-boot/
  20. ^ «Журналы изменений (Windows)» . MSDN . Проверено 16 апреля 2010 .
  21. ^ «Создание, изменение и удаление журнала изменений (Windows)» . MSDN . Проверено 16 апреля 2010 .
  22. ^ «Жесткие ссылки и переходы» . MSDN . Microsoft . 12 октября 2013 . Проверено 21 октября 2013 года .
  23. ^ «Глава 29 - Совместимость с POSIX» . Руководство по ресурсам MS Windows NT Workstation 4.0 . Microsoft . 1995 . Проверено 21 октября 2013 года .
  24. ^ «MSDN - функция CreateHardLink» . Проверено 14 января +2016 .
  25. ^ Руссинович, Марк Э .; Соломон, Дэвид А .; Ионеску, Алекс (2009). «Файловые системы». Windows Internals (5-е изд.). Microsoft Press. п. 921. ISBN 978-0-7356-2530-3. Одним из компонентов Windows, который использует несколько потоков данных, является Служба выполнения вложений [...] в зависимости от того, в какой зоне был загружен файл из [...] Windows Explorer может предупреждать пользователя
  26. ^ «Потоки - Windows Sysinternals» . Technet.microsoft.com . Проверено 22 сентября 2018 года .
  27. ^ "Провайдер файловой системы" . Microsoft. 9 августа 2012 года Архивировано из оригинала 23 января 2015 года . Проверено 23 января 2015 года .
  28. ^ Вредоносное ПО, использующее альтернативные потоки данных? Архивировано 23 июля 2008 г.в Wayback Machine , веб-журнал AusCERT, 21 августа 2007 г.
  29. ^ «Сжатие и декомпрессия файлов» . SDK платформы MSDN: файловые системы . Проверено 18 августа 2005 .
  30. ^ «Размер кластера по умолчанию для файловых систем NTFS и FAT» . Microsoft. 31 января 2002 . Проверено 10 января 2012 .
  31. ^ а б Миддлтон, Деннис. «Что такое сжатие NTFS» . Блог Ntdebugging . Microsoft . Проверено 16 марта 2011 .
  32. ^ «Сокращение разрыва: вырезание файлов, сжатых NTFS» . Проверено 29 мая 2011 .
  33. ^ «Как работает NTFS» . 2003-03-28 . Проверено 24 октября 2011 .
  34. ^ Masiero, Manuel (2011-12-01). «Следует ли сжимать данные на SSD?» . Оборудование Тома . Bestofmedia Group . Проверено 5 апреля 2013 .
  35. ^ «Дисковые концепции и устранение неполадок» . Microsoft . Проверено 26 марта 2012 .
  36. ^ «Файловые группы только для чтения и сжатие» . Электронная документация по SQL Server 2008 . Microsoft . Ноября 2009 . Проверено 20 апреля 2010 .
  37. ^ «Рекомендации по сжатию NTFS в Windows» . База знаний Microsoft . Проверено 18 августа 2005 .
  38. ^ «Компактная ОС, создание единственного экземпляра и оптимизация изображений» . Microsoft . Дата обращения 1 октября 2019 .
  39. ^ «Редкие файлы» . MSDN . Microsoft . 12 октября 2013 . Проверено 21 октября 2013 года .
  40. ^ Kandoth, Суреш B. (4 марта 2009). «Ошибки разреженных файлов: 1450 или 665 из-за фрагментации файлов: исправления и обходные пути» . Инженеры CSS SQL Server . Microsoft . Проверено 21 октября 2013 года .
  41. ^ «Редкие файлы и дисковые квоты» . Библиотека MSDN . Microsoft . 12 октября 2013 . Проверено 21 октября 2013 года .
  42. ^ «Разработка стратегии теневого копирования» . Библиотека TechNet . Microsoft . 28 марта 2003 . Проверено 15 января 2008 .
  43. ^ cfsbloggers (14 июля 2006 г.). «Как точки восстановления и другие функции восстановления в Windows Vista зависят от двойной загрузки Windows XP» . Архивный шкаф . Проверено 21 марта 2007 .
  44. ^ «Транзакционная NTFS» . MSDN . Microsoft . Проверено 2 февраля 2007 .
  45. ^ «Транзакционная NTFS (TxF)» . Центр разработки для Windows (MSDN) . Microsoft . Дата обращения 24 мая 2015 .
  46. ^ a b «Как работают дескрипторы безопасности и списки контроля доступа» . TechNet . Microsoft . Проверено 4 сентября 2015 года .
  47. ^ Морелло, Джон (февраль 2007 г.). «Служба безопасности, развертывающая EFS: Часть 1» . Журнал Технет . Microsoft . Проверено 25 января 2009 .
  48. ^ «Как работает EFS» . Комплект ресурсов Windows 2000 . Microsoft . Проверено 25 февраля 2014 года .
  49. ^ «Глава 18 - Выбор файловой системы» . Руководство по ресурсам MS Windows NT Workstation 4.0 . Microsoft . Проверено 25 февраля 2014 года .
  50. ^ «Именование файлов, путей и пространств имен» . MSDN . Microsoft . Соглашения об именах . Проверено 25 февраля 2014 года .
  51. ^ "NTFS. Раздел загрузочного сектора" . Ntfs.com . Проверено 22 сентября 2018 года .
  52. ^ "Загрузочный сектор" . Technet.microsoft.com . Проверено 22 сентября 2018 года .
  53. ^ «Основная файловая таблица» . MSDN . 2 июля 2012 г.
  54. ^ "Таблица основных файлов NTFS (MFT)" . Ntfs.com . Проверено 22 сентября 2018 года .
  55. ^ Шварц, Томас. «COEN 252 Computer Forensics NTFS» . Факультет организации и информатики Загребского университета . Проверено 30 мая 2019 года .
  56. ^ Начиная с Windows XP, очень сложно просмотреть список этих файлов: они существуют в индексе корневого каталога, но интерфейс Win32 отфильтровывает их. В NT 4.0 команда командной строкиdirвыводила бы список метафайлов в корневом каталоге, если бы они/aбыли указаны. В Windows 2000dir /aперестал работать, ноdir /a \$MFTработал.
  57. ^ a b «Доступность сервисного релиза 2 фазы 3 средств поддержки OEM» . Корпорация Майкрософт. 21 февраля 2007 г. Архивировано из оригинала на 2015-02-23 . Проверено 16 июня 2010 . Утилита информации о файловом секторе файловой системы Windows NT (NTFS) ... Инструмент, используемый для создания дампа информации о томе NTFS
  58. ^ «Четыре этапа роста файлов NTFS» . Проверено 22 сентября 2018 года .
  59. ^ «Сильно фрагментированный файл в томе NTFS не может превышать определенный размер» . Архивировано из оригинала на 2015-02-22 . Проверено 19 декабря 2018 .
  60. ^ "Архивная копия" . Архивировано из оригинала на 2010-08-23 . Проверено 19 декабря 2018 .CS1 maint: заархивированная копия как заголовок ( ссылка )
  61. ^ «Что нового в NTFS» . Technet.microsoft.com . Проверено 22 сентября 2018 года .
  62. ^ " Преодоление ошибки перехода на летнее время и получение правильного времени модификации файла. Архивировано 14 ноября 2004 г. на Wayback Machine " Проект Code
  63. ^ cfsbloggers (14 июля 2006 г.). «Как точки восстановления и другие функции восстановления в Windows Vista влияют на двойную загрузку с Windows XP» . Архивный шкаф . Проверено 21 марта 2007 .
  64. ^ «Как конвертировать диски FAT в NTFS» . Microsoft . Проверено 30 мая 2019 года .
  65. ^ «Как использовать Convert.exe для преобразования раздела в файловую систему NTFS» . Корпорация Майкрософт. 2007-02-12 . Проверено 26 декабря 2010 .
  66. ^ «Примечания к выпуску FreeBSD 3.2» . 17 мая 1999 . Проверено 15 июня 2020 .
  67. ^ a b "mount_ntfs - страницы руководства OpenBSD" . Проверено 15 июня 2020 .
  68. ^ "Анонс NetBSD 1.5" . 6 декабря 2000 . Проверено 15 июня 2020 .
  69. ^ "OpenBSD 4.9" . Openbsd.com . Проверено 22 сентября 2018 года .
  70. ^ "О Туксере" . Проверено 15 июня 2020 .
  71. ^ Альварес, Milind (2 октября 2009). «Скрытая поддержка чтения / записи NTFS Snow Leopard» . Архивировано из оригинального 10 августа 2010 года . Проверено 18 сентября 2010 года .
  72. ^ «Ян Краточвил: Captive: первая бесплатная файловая система чтения / записи NTFS для GNU / Linux» . Проверено 15 июня 2020 .
  73. ^ "OpenBSD добавляет поддержку fuse (4) для добавления файловых систем в пользовательскую среду" . OpenBSD Journal . 2013-11-08 . Проверено 8 ноября 2013 .
  74. ^ "Стабильный драйвер чтения / записи NTFS-3G" . 2009-07-25.
  75. ^ «Tuxera NTFS для Mac» . Туксера. 30 августа 2011 . Проверено 20 сентября 2011 года .
  76. ^ «NTFS для Mac OS X, канал связи между Mac OS X и Windows» . Группа программного обеспечения Paragon . Проверено 20 сентября 2011 года .
  77. ^ Драйвер NTFS для чтения / записи Seagate для Mac OS X, заархивировано 10 февраля 2011 г. на Wayback Machine
  78. ^ "Плагин NTFS для NetDrive" . ecsoft2.org . Проверено 9 сентября 2020 .
  79. ^ "NetDrive для OS / 2" . arcanoae.com . Проверено 9 сентября 2020 .
  80. ^ «Avira NTFS4DOS Personal» . Архивировано 19 июня 2010 года . Проверено 25 июля 2009 .CS1 maint: bot: исходный статус URL неизвестен ( ссылка )
  81. ^ "Загрузить Avira NTFS4DOS Personal 1.9" . Проверено 22 сентября 2018 года .

Дальнейшее чтение [ править ]

  • Болоски, Уильям Дж .; Корбин, Скотт; Гебель, Дэвид; Дусер, Джон Р. (2 декабря 2008 г.). «Одноэкземплярное хранилище в Windows 2000» (PDF) . Microsoft. Цитировать журнал требует |journal=( помощь )
  • Кастер, Хелен (1994). Внутри файловой системы Windows NT . Microsoft Press . ISBN 978-1-55615-660-1.
  • Нагар, Раджив (1997). Внутреннее устройство файловой системы Windows NT: Руководство разработчика . О'Рейли . ISBN 978-1-56592-249-5.
  • «Технический справочник NTFS» . Microsoft TechNet . Microsoft . 28 марта 2003 г.