Назад | Перейти на главную страницу

NTFS «Секреты»?

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

Какие еще существуют полезные функции, которые могут не быть описаны в документации Википедия, и как получить доступ к этим функциям? Используется ли сторонняя программа, настройки реестра, скрытые окна конфигурации, cli и т. Д. Для управления / создания / использования этих функций?

Обновить: Превращаем это в вики сообщества.

Для этого Microsoft распространяет как минимум два инструмента Sysinternals.

  1. Соединение позволяет управлять точками соединения (символическими ссылками).
  2. Потоки покажет вам альтернативные потоки данных. На этой странице также показаны :stream синтаксис для управления ими из командной строки.

Альтернативные потоки данных - вы можете использовать LADS инструмент для их перечисления.

Вы можете создать их, например, выполнив:

блокнот test.txt: adsname1
блокнот test.txt: adsname2
блокнот test.txt

Все 3 будут показаны в проводнике как 1 файл, но все они являются разными потоками, прикрепленными к одному и тому же имени файла.

NTFS поддерживает имена файлов, которых нет в Win32 API. Например, подсистема POSIX позволяет использовать следующие имена (из книги Windows Internals):

"TrailingDots..." 
"SameNameDifferentCase"
"samenamedifferentcase"
"TrailingSpaces    "

По-видимому, вы все еще можете увидеть их все, используя 'dir / x'

Также возможно создавать файлы с действительно длинные пути к файлам (до 32 000 символов). Вы все еще можете увидеть их в проводнике, но удалить их нелегко.

Внутреннее устройство Windows по Марк Руссинович есть глава о NTFS и о том, что она поддерживает и не поддерживает. В пятой главе 11 рассматриваются все файловые системы, поддерживаемые Windows NT, и подробно рассказывается о внутреннем устройстве NTFS.

Команда Windows fsutil раскрывает большинство неясных функций NTFS, если я не ошибаюсь. Start -> Run -> cmd.exe -> fsutil /? для получения дополнительной информации.

NTFS поддерживает «символические ссылки»:

  • для каталогов (термин MS: «соединения») во всех версиях NTFS
  • для файлов (используя CreateSymbolicLink с Vista и Server 2008)

Он также поддерживает жесткие ссылки на файлы через CreateHardLink работают с Windows 2000.

Проверьте эту страницу: Жесткие ссылки и переходы.

Я использовал CreateHardLink в скриптах Python (через Python ctypes модуль). У меня даже есть сценарий «дедупликации», который находит повторяющиеся файлы и при некоторых условиях заменяет их жесткими ссылками, что освобождает много места при типичной установке Windows.

В 1997 году О'Рейли опубликовал Внутреннее устройство файловой системы Windows NT. Он старый, поэтому большая часть информации может быть устаревшей. Однако он должен содержать много информации.