Содержание

Работа с NTFS-ссылками

В данной статье рассмотрены так называемые ntfs-ссылки, которые пришли в windows-среду из nix-систем. Для работы с данным типом ссылок в ОС Windows используется командный интерпретатор (проще говоря консоль), так же существует множество как коммерческих, так и бесплатных программных продуктов.

Совсем в двух словах определение для «ещё не знавших», пожалуй звучит так: ntfs-ссылки - это что-то вроде ярлыков в системе windows. Только в отличии от последних, позволяют работать с ресурсами (папками или файлами) «прозрачно». То есть обращаясь к такой ссылке, система думает, что работает непосредственно с ресурсом (папкой или файлом).

Жёсткие ссылки (hard links) - это просто файловые записи, ссылающиеся на одно и то же место в области данных.

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

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

Жесткие связи поддерживаются в NTFS, начиная с NT 4.0.

Точка монтирования (junction points)

NTFS начиная с версии NT 5.0 (Windows 2000/XP) поддерживает точки монтирования (точки соединения, точки монтирования каталогов, junction points, directory junctions). Точки монтирования каталогов в Windows 2000/XP известны как «directory junctions» — технология, позволяющая отображать любые локальные папки на любые другие локальные папки. Например, если папка D:\SYMLINK указывает на C:\WINNT\SYSTEM32 в качестве своей цели, то программа, обращающаяся к D:\SYMLINK\DRIVERS, будет на самом деле обращаться к C:\WINNT\SYSTEM32\DRIVERS.

Напрямую делать точки соединения на папки CD-ROM нельзя, но можно это ограничение обойти, смонтировав CD-ROM диск на папку NTFS-раздела.

Вообще, точки соединения отличаются от символических ссылок, по сути лишь возможностью работы исключительно с каталогами. До сих пор понятие этих двух типов ссылок сильно размыты, и четкого определения в рунетах найти сложно, часто junctions ошибочно называют символическими (symbolic) ссылками (подробнее про данный тип ссылок ниже).

Не удаляйте точку соединения с помощью проводника, команды del /s или других средств файловой системы, рекурсивно работающих с деревьями каталогов. Данные средства воздействуют на целевой каталог и все его подкаталоги. Для безопасного удаления точек соединения рекомендуется использовать только специальные утилиты для работы с точками соединения (начиная с Windows 7 Проводник позволяет безопасно удалять точки соединения).

Точка монтирования тома (volume mount point)

Всего существует два вида точек монтирования: точка монтирования каталога (junction point, о ней писалось выше) и точка монтирования тома (volume mount point). Различает их только источник монтирования (как следует из названия - каталок и том).

Символическая ссылка (символьная ссылка, symbolic links) — доступна с Windows Vista. Может указывать и на файлы, и на директории.

Стоит заметить, что при доступе по сети, символические (symbolic) ссылки разрешаются на стороне клиента, в отличие от точки соединения (junctions). Т.е. для публикации каталогов в сети желательно использовать именно junctions-связи.

Программы

По моему мнению, на данный момент, лучшей программой для работы с ntfs-ссылками является Link Shell Extension (LSE).

Источники

http://www.computerra.ru
https://www.wikipedia.org
http://habrahabr.ru

1)
Точнее, всё это сделать можно, однако связь потеряется.